我只是从JsTestDriver开始,并且创建了非常简单的演示代码来查看是否正确配置了我的环境。但是,大约40-50%的时间,当启动Firefox(通过JsTestDriver)时,出现以下错误:“启动时Firefox意外关闭”。
如果我使用Chrome,则会发生而不是这个错误。
我的环境包括:
运行Ubuntu 10.04.4 LTS 32位的
我正在执行:
java -jar /home/developer/bin/JsTestDriver.jar --port 9876 --browser /usr/bin/firefox --tests all --testOutput results
我的JsTestDriver配置为:
server: http://localhost:9876
load:
- src/*.js
test:
- test/*.js
timeout: 10
源代码(正在测试的代码)为:
Person = function()
{
this.firstName = "";
this.lastName = "";
this.fullName = function()
{
if((this.firstName != "") && (this.lastName != ""))
{
return this.lastName + ", " + this.firstName;
}
var name = this.firstName + " " + this.lastName;
return name.trim();
}
};
测试代码(基于JsTestDriver的代码)为:
PersonTest = TestCase("PersonTest");
PersonTest.prototype.testFullName = function()
{
fixture = new Person();
fixture.firstName = "John";
fixture.lastName = "Doe";
assertEquals("Doe, John", fixture.fullName());
};
PersonTest.prototype.testFullName_FirstNameOnly = function()
{
fixture = new Person();
fixture.firstName = "John";
assertEquals("John", fixture.fullName());
};
PersonTest.prototype.testFullName_LastNameOnly = function()
{
fixture = new Person();
fixture.lastName = "Doe"
assertEquals("Doe", fixture.fullName());
};
谢谢!
最佳答案
您的问题可能在于您每次运行测试时都在打开浏览器以打开服务器。我认为不太容易出错的解决方案是启动服务器,并使其捕获某些浏览器,然后使其运行。然后,您可以根据需要在该服务器上运行测试。我们正在使用的解决方案涉及三个始终运行IE7,IE8,IE9,Firefox和Chrome的虚拟机,并且我们的Maven构建过程在每次构建时都运行我们的javascript单元测试。另外,请确保还始终使用“--reset”参数。它将使您的浏览器保持最新状态。我写了一篇文章,展示了如何将QUnit,Requirejs和代码覆盖范围与独立于Maven的JSTD集成:js-test-driver+qunit+coverage+requirejs。希望能帮助到你。
关于linux - JsTestDriver Firefox浏览器崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11201664/