问题标签 [codeceptjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何覆盖 CodeceptJS 中的函数
每次单击元素时,我都想做一些事情。
所以当我打电话点击
我不想调用 webdriver click 函数,而是希望它调用我添加到 steps_file.js 的覆盖
我有两个问题:
- 我的点击功能被忽略了。它仍然可以正常单击元素。我没有看到任何日志“某事”
- steps_file.js 似乎无法访问帮助程序。this.helpers 未定义
javascript - 如何在 CodeceptJS 中尝试 Catch
我在我的页面对象中这样做:
但是当定位器与选项元素不匹配时,它仍然无法通过测试。
我想赶上并继续测试,而不会失败。
更新:
看起来这取决于 try 块中的内容。
如果我在那里放置一个断言,例如I.see('something');
Then 不会跳过 catch 块。但是 try 块中的非断言,比如I.selectOption('something')
抛出未被 catch 捕获的错误。
javascript - CodeceptJs 等待一个元素从 DOM 中消失
我正在开发一个测试套件,我发现确定页面准备就绪的唯一方法是选择器“div.spinner”消失时。我能够使用 CapserJs(使用 PhantomJs 或 SlimerJs)来捕捉这种情况:
我不得不使用 nightmarejs 2.10.1 切换到 codeceptjs 1.0.1,我无法正确翻译这种情况。
我必须避免等待一些预定义的时间,因为我们有许多环境要测试,并且根据负载的不同,等待时间可能会从 1 秒到 40 秒以上不等。
目前我计划在 codecept 上复制 casper 功能Casper.prototype.waitWhileSelector
有没有人有类似的问题?我是否缺少 CodeceptJs 中的某些功能?
提前致谢
node.js - 无业游民的噩梦JS超时
我有流浪虚拟机,我可以从那里访问一些端点(通过 curl)。我安装了 node (v 8.4.0) 和 npm (v 5.3.0)。我通过 sudo 运行它。我使用 nightmareJS,它无法连接到端点。我在其他机器上运行相同的测试用例,它可以在没有超时的情况下工作:
测试/test_simple.js
当我运行时:
然后有一个超时:
编辑
我尝试了 node v8.3.0 和 nightmare 2.8 和 2.4.1 但同样的错误。看起来 vagrant 正在阻止请求(?)
Edit2
我在调试节点中运行了噩梦,我得到了电子错误:
DEBUG=nightmare npm test
nightmare electron child process exited with code 127: command not found - you may not have electron installed correctly +0ms
nightmare queueing action "goto" for http://simple-form-bootstrap.plataformatec.com.br/documentation +3ms
nightmare running +2ms
Edit3 deuggin
电子给出:
electron:stderr /home/vagrant/te/node_modules/electron/dist/electron: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
intellij-idea - 在 PhpStorm 中使用 CodeceptJS 未解决的函数或方法
我刚刚按照CodeceptJS 快速入门并first_test.js
在 PhpStorm IDE 中打开(相当于 WebStorm、IntelliJ 等)。
对于所有内置函数,我得到“未解析的函数或方法……”:
我也没有在I
.
我试过以下。
- 寻找 CodeceptJS 插件。没找到。
codeceptjs/node_modules
在设置 -> 语言和框架 -> JavaScript -> 库中启用。- 将 JavaScript 语言版本设置为 ECMAScript 6。
- 启用 Node.js 核心库。
- 重新启动 PhpStorm。
variables - 从 span 中获取文本,然后使用 CodeceptJS 进行比较
我在一页上有这个源:
我在另一个页面上有这个源
我想获取 666 的值,将其存储在某处,然后与 777 进行比较。如何使用 codeceptjs 做到这一点?
我试过I.grabValueFrom('some_xpath_to_value')
了,但我不明白如何重用它。如何查看I.grabValueFrom
函数在 codeceptjs 中返回的值?
javascript - 如何使用 i 调用 xpath 以使用 Javascript 在 for 循环中增加变量名?
这是 EX 调用的简单全局变量:循环外的 this.u5boys。
这是一个简单的循环,它将在运行时尝试单击文字字符串“this.u5boys”。如何使它将 this.u5boys 处理为上述同一文件中的全局 xpath 标识符?
我如何告诉它在运行 I.click() 函数之前处理 this.u5boys 的值?
codeceptjs - codeceptjs 相当于什么?
我正在进行 API 调用并想验证它是否成功。像这样的东西:
如何检查 codeceptjs 中的等价性?
automated-tests - 多部分 Codecept.js 场景应该如何组织?
多部分 Codecept.js 场景的首选(或只是一个好的)模式是什么,例如:
- 选择要上传的文件。
- 清空选项。
- 清除选择后选择要上传的文件。
我可以在单个场景中执行此操作并用于I.say
描述部分,但感觉我应该能够将这些作为独立场景编写并.only
在第 2 部分中使用,例如,第 1 部分在第 2 部分之前运行,因为它取决于它。
如果在运行整个套件时第 1 部分失败,我也想跳过第 2 部分和第 3 部分。
unirest - Codeceptjs 统一助手
框架-codeceptjs。我想向我的应用程序发送 api 请求:I.sendPostRequest I.sendGetRequest 等。
我安装了 unirest 库。接下来我必须做什么?如何为这些函数编写助手?