我只是从JsTestDriver开始,并且创建了非常简单的演示代码来查看是否正确配置了我的环境。但是,大约40-50%的时间,当启动Firefox(通过JsTestDriver)时,出现以下错误:“启动时Firefox意外关闭”。

如果我使用Chrome,则会发生而不是这个错误。

我的环境包括:

运行Ubuntu 10.04.4 LTS 32位的

  • VirtualBox 4.1.18
  • Firefox 13.0.1
  • JsTestDriver-1.3.4.b
  • openjdk-6-jre-headless

  • 我正在执行:
    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/

    10-15 05:00