首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未加载`testem.js的Ember测试失败吗?

未加载`testem.js的Ember测试失败吗?
EN

Stack Overflow用户
提问于 2018-07-13 04:16:37
回答 3查看 2.6K关注 0票数 6

我得到了下面提到的错误消息,在下面提到的成员项目在本地使用ember test进行测试时。大多数时候,PhantomJS被绞死。

$ ember test

代码语言:javascript
复制
not ok 1 Chrome - error
---
    message: >
        Error: Browser failed to connect within 30s. testem.js not loaded?
        Stderr: 
         2018-07-13 11:24:43.115 Google Chrome[47537:547312] Errors logged by ksadmin: KSKeyedPersistentStore store directory does not exist. [com.google.UpdateEngine.CommonErrorDomain:501 - '/Library/Google/GoogleSoftwareUpdate/TicketStore' - 'KSKeyedPersistentStore.m:368']
        KSPersistentTicketStore failed to load tickets. (productID: com.google.Chrome) [com.google.UpdateEngine.CoreErrorDomain:1051 - '/Library/Google/GoogleSoftwareUpdate/TicketStore/Keystone.ticketstore'] (KSKeyedPersistentStore store directory does not exist. - '/Library/Google/GoogleSoftwareUpdate/TicketStore' [com.google.UpdateEngine.CommonErrorDomain:501])
        ksadmin cannot access the ticket store:<KSUpdateError:0x100404060
            domain="com.google.UpdateEngine.CoreErrorDomain"
            code=1051
            userInfo={
                function = "-[KSProductKeyedStore(ProtectedMethods) errorForStoreError:productID:message:timeoutMessage:]";
                date = 2018-07-13 03:24:43 +0000;
                productids = {(
                    "com.google.Chrome"
                )};
                filename = "KSProductKeyedStore.m";
                line = 102;
                NSFilePath = "/Library/Google/GoogleSoftwareUpdate/TicketStore/Keystone.ticketstore";
                NSUnderlyingError = <KSError:0x100515350
                    domain="com.google.UpdateEngine.CommonErrorDomain"
                    code=501
                    userInfo={
                        date = 2018-07-13 03:24:43 +0000;
                        line = 368;
                        filename = "KSKeyedPersistentStore.m";
                        function = "-[KSKeyedPersistentStore(PrivateMethods) validateStorePath]";
                        NSFilePath = "/Library/Google/GoogleSoftwareUpdate/TicketStore";
                        NSLocalizedDescription = "KSKeyedPersistentStore store directory does not exist.";
                    }
                >;
                NSLocalizedDescription = "KSPersistentTicketStore failed to load tickets.";
            }
        >
        [47537:28675:0713/112447.920274:ERROR:ssl_client_socket_impl.cc(1026)] handshake failed; returned -1, SSL error code 1, net_error -107
        [47537:28675:0713/112448.006779:ERROR:ssl_client_socket_impl.cc(1026)] handshake failed; returned -1, SSL error code 1, net_error -107
        2018-07-13 11:24:52.494 Google Chrome Helper[47600:548065] Couldn't set selectedTextBackgroundColor from default ()


    Log: |
        { type: 'error',
          text: 'Error: Browser failed to connect within 30s. testem.js not loaded?' }
        { type: 'error',
          text: '2018-07-13 11:24:43.115 Google Chrome[47537:547312] Errors logged by ksadmin: KSKeyedPersistentStore store directory does not exist. [com.google.UpdateEngine.CommonErrorDomain:501 - \'/Library/Google/GoogleSoftwareUpdate/TicketStore\' - \'KSKeyedPersistentStore.m:368\']\nKSPersistentTicketStore failed to load tickets. (productID: com.google.Chrome) [com.google.UpdateEngine.CoreErrorDomain:1051 - \'/Library/Google/GoogleSoftwareUpdate/TicketStore/Keystone.ticketstore\'] (KSKeyedPersistentStore store directory does not exist. - \'/Library/Google/GoogleSoftwareUpdate/TicketStore\' [com.google.UpdateEngine.CommonErrorDomain:501])\nksadmin cannot access the ticket store:<KSUpdateError:0x100404060\n\tdomain="com.google.UpdateEngine.CoreErrorDomain"\n\tcode=1051\n\tuserInfo={\n\t\tfunction = "-[KSProductKeyedStore(ProtectedMethods) errorForStoreError:productID:message:timeoutMessage:]";\n\t\tdate = 2018-07-13 03:24:43 +0000;\n\t\tproductids = {(\n\t\t\t"com.google.Chrome"\n\t\t)};\n\t\tfilename = "KSProductKeyedStore.m";\n\t\tline = 102;\n\t\tNSFilePath = "/Library/Google/GoogleSoftwareUpdate/TicketStore/Keystone.ticketstore";\n\t\tNSUnderlyingError = <KSError:0x100515350\n\t\t\tdomain="com.google.UpdateEngine.CommonErrorDomain"\n\t\t\tcode=501\n\t\t\tuserInfo={\n\t\t\t\tdate = 2018-07-13 03:24:43 +0000;\n\t\t\t\tline = 368;\n\t\t\t\tfilename = "KSKeyedPersistentStore.m";\n\t\t\t\tfunction = "-[KSKeyedPersistentStore(PrivateMethods) validateStorePath]";\n\t\t\t\tNSFilePath = "/Library/Google/GoogleSoftwareUpdate/TicketStore";\n\t\t\t\tNSLocalizedDescription = "KSKeyedPersistentStore store directory does not exist.";\n\t\t\t}\n\t\t>;\n\t\tNSLocalizedDescription = "KSPersistentTicketStore failed to load tickets.";\n\t}\n>\n[47537:28675:0713/112447.920274:ERROR:ssl_client_socket_impl.cc(1026)] handshake failed; returned -1, SSL error code 1, net_error -107\n[47537:28675:0713/112448.006779:ERROR:ssl_client_socket_impl.cc(1026)] handshake failed; returned -1, SSL error code 1, net_error -107\n2018-07-13 11:24:52.494 Google Chrome Helper[47600:548065] Couldn\'t set selectedTextBackgroundColor from default ()\n' }



1..1
# tests 1
# pass  0
# skip  0
# fail  1
Testem finished with non-zero exit code. Tests failed.

testem.js: /*jshint node:true*/ module.exports = { "framework": "qunit", "test_page": "tests/index.html?hidepassed", "disable_watching": true, "launch_in_ci": [ "Chrome" ], "launch_in_dev": [ "PhantomJS", "Chrome" ] };

安装版本: MacOS Sierra 10.12.6 node: 6.12.2 npm: 5.6.0 ember: 2.12.0 ember-cli: 2.18.2 phantomjs: 2.1.1

下面是我的测试/index.html文件的一部分:

代码语言:javascript
复制
<script src="testem.js" integrity=""></script>
<script src="assets/vendor.js"></script>
<script src="assets/test-support.js"></script>
<script src="assets/myApp.js"></script>
<script src="assets/tests.js"></script>

也尝试用ember test --server,但同样的错误。所以,任何人都不知道如何缩小这个范围,以及为什么替身没有被装载?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-07-13 14:54:30

对于测试,通常需要在无头模式下运行chrome,并启用远程调试。将这些行添加到您的testem.json中应该会有所帮助:

代码语言:javascript
复制
"browser_args": {
  "Chrome": [
    '--headless',
    '--disable-gpu',
    '--remote-debugging-port=9222',
    '--window-size=1440,900',
  ]
}

我还建议删除"PhantomJS“行--由于本期的原因,最近的ember版本可能无法使用幻影。

票数 3
EN

Stack Overflow用户

发布于 2018-07-16 03:57:36

使用以下设置更改了testem.js。和它的工作精细:)

代码语言:javascript
复制
/* eslint-env node */
module.exports = {
  test_page: 'tests/index.html?hidepassed',
  disable_watching: true,
  launch_in_ci: [
    'Chrome'
  ],
  launch_in_dev: [
    'Chrome'
  ],
  browser_args: {
    Chrome: {
      mode: 'ci',
      args: [
        '--disable-gpu',
        '--headless',
        '--remote-debugging-port=0',
        '--window-size=1440,900'
      ]
    }
  }
};
票数 0
EN

Stack Overflow用户

发布于 2021-08-06 17:04:38

如果您已经检查了明显的浏览器设置,但仍然不起作用:看看是否设置了EMBER_ENV=test

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51317567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档