首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有Nightmare的Codeceptjs不输出测试结果

带有Nightmare的Codeceptjs不输出测试结果
EN

Stack Overflow用户
提问于 2017-03-04 00:53:22
回答 1查看 464关注 0票数 1

基本上,我按照http://codecept.io/页面上的get started部分中的描述执行了所有操作。

来自package.json的devDependencies:

代码语言:javascript
复制
"codeceptjs": "^0.5.1",
"nightmare": "^2.10.0",
"nightmare-upload": "^0.1.1"

codecept.json:

代码语言:javascript
复制
{
  "tests": "./tests/acceptance/*_test.js",
  "timeout": 10000,
  "output": "./output",
  "helpers": {
    "Nightmare": {
      "url": "http://localhost:8080",
      "show": false,
      "restart": false
    }
  },
  "include": {},
  "bootstrap": false,
  "mocha": {},
  "name": "vagrant"
}

测试本身也来自于教程:

代码语言:javascript
复制
Feature('My first test');

Scenario('test something', (I) => {
    I.amOnPage('http://yahoo.com');
    I.fillField('p', 'github nightmare');
    I.click('Search Web');
    I.waitForElement('#main');
    I.seeElement('#main .searchCenterMiddle li a');
    I.seeElement("//a[contains(@href,'github.com/segmentio/nightmare')]");
    I.see('segmentio/nightmare','#main li a');
});

当我运行codeceptjs run --steps时,我在控制台中得到一个输出:screenshot

测试是通过还是失败并不重要,输出总是一样的。

有没有人知道我做错了什么,以及如何改正?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-08 22:45:45

好的。我设法让它起作用了。问题出在虚拟缓冲区(我从vagrant内部运行codeceptjs )。在这种情况下,解决方案是简单而常见的,但我完全忘记了它。

您需要使用xvfb运行codeceptjs。它看起来是这样的:

代码语言:javascript
复制
xvfb-run --server-args='-screen 0 1024x768x24' codeceptjs run --steps

在此之前,不要忘记安装所有必需的库:

代码语言:javascript
复制
sudo apt-get install pkg-config libjpeg-dev libgif-dev g++ git-all xvfb libgtk2.0-0 dbus-x11 -y;
sudo apt-get install libnss3-dev -y;
sudo apt-get install gtk2-engines-pixbuf xfonts-cyrillic xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable -y;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42584449

复制
相关文章

相似问题

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