问题标签 [serenity-js]

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.

0 投票
1 回答
201 浏览

angular - 步骤定义未实现 - 带有 Angular9 和 Serenity/JS 的 Cucumber

protractor e2e/protractor.conf.js当我使用测试报告器运行我的 Cucumber 步骤定义时,返回:

这是步骤定义,用 Serenity/JS 编写:

我试过了:

  • 调整我的 protractor.conf.js 文件,我没有发现任何问题
  • 卸载并重新安装 serenity/js 和
    cucumber的依赖项
  • 重写我的步骤定义
  • 在每个步骤定义中执行强制返回“ExecutionSuccessful”
  • 将我的构建与 Serenity/JS 的 GitHub 上的量角器黄瓜示例进行比较

这些事情中的每一个都导致了同样的错误。

为什么我的步骤定义没有被阅读/实施?

0 投票
1 回答
252 浏览

serenity-bdd - SerenityJS - NPM CI 命令入门问题 - Serenity-BDD CLI jar

我在我的 Mac 上工作,我正在尝试开始使用此处找到的 Serenity JS 模板项目:https ://github.com/serenity-js/serenity-js-cucumber-protractor-template 。在我安装了所有先决条件并克隆了代码之后,我运行了“npm ci”命令,该命令失败并出现错误:

我在我的个人电脑上遵循了相同的过程,没有遇到这个问题。那么,也许它与我的工作机器上的安全性有关?我有管理员权限,但不能运行任何 sudo 命令。任何建议,将不胜感激。

0 投票
1 回答
32 浏览

serenity-js - Click.on(link) 与 Navigate.to()

我正在测试的系统是一个网站,它从配置文件和索引页面动态创建页面,这些页面带有可点击的图标。到目前为止,我找不到一种方法来遍历索引页面上的图标并测试所有链接页面。

到目前为止,此循环有效,它向我显示了 Chrome 中的所有页面,但记录的网站标题始终是索引页面中的标题,因此我无法对点击的页面进行任何测试。(评论Navigate.back()也打破了测试。 ) 我试图从 中读取点击页面的 url Loop.item<ElementFinder>(),所以我可以使用Navigate.To(),但我找不到任何方法。

0 投票
1 回答
190 浏览

serenity-bdd - 如何从特定 xpath 获取文本以及如何使用 Serenity 将其存储在字符串中

我想从 xpath 中获取文本并将其存储在字符串中。

输入所有输入并提交后,将生成一个新代码,类似于 Customercode: IN02732114(数字将动态)。

现在我想获取此代码并将其存储在一个字符串中,稍后我想在其他步骤中使用此字符串来使用此代码搜索数据。

我在下面使用了不同的片段来从 xpath 获取文本。

public static Question customer_code_value() { return actor -> Text.of(CustomerCreatePage.CUSTOMER_CODE_TEXT).viewedBy(actor).asString().substring(15, 26); }

字符串代码= customer_code_value(); // 尝试将值存储在字符串代码中

但是 customer_code_value() 方法在问题中返回并且不能存储在字符串中。

需要一些有关如何获取文本并将其存储在 Serenity 中的字符串的帮助。请帮我 ...

0 投票
1 回答
27 浏览

serenity-bdd - 在 package.json protractor 项目中下载特定版本的 serenity-cli jar

有没有办法可以下载特定版本的 serenity-cli jar。

senario:我想使用cli的旧jar的特定版本,我在哪里提到package.json中的jar版本。

TIA

0 投票
2 回答
131 浏览

docker - 'serenity-bdd run' 在 Docker 中给出'“路径”参数必须是字符串类型'错误

我有一个在命令行上正常运行的 Serenity-JS 项目。我正在尝试将其打包到 Docker 容器中以在 Azure 管道中使用,这是我们在其他项目中使用的模型。

但是,当我通过 Docker 运行项目时,测试正确执行,但生成报告文档的步骤失败并出现一个相当简洁的错误:

输出中没有其他内容,因此问题的根源尚不清楚。我什至不确定path这是指哪个论点。我已经深入研究了 Serenity-JS Node 模块,但我没有看到明确的罪魁祸首,我也不明白为什么它可以通过命令行工作,但不能在 Docker 中工作。任何见解将不胜感激。谢谢!

0 投票
0 回答
31 浏览

jestjs - 使用 serenityJS + Jasmine 在 Angular Web App 上运行 tets 时出现问题

我们正在尝试使用 serenityJS + Jasmine 在 Angular Web 应用程序上运行组件测试,但遇到以下错误。知道我们如何解决这个问题吗?

错误快照

0 投票
3 回答
4790 浏览

angular - 错误:fakeAsync() 测试助手需要 zone-testing.js,但找不到。使用 serenityJS+Jasmine 在 Angular webapp 上运行测试时

我正在尝试使用 serenityJS + Jasmine 在 Angular Web 应用程序上运行组件测试,但遇到以下错误。知道如何解决这个问题吗?

堆栈:错误:fakeAsync() 测试助手需要 zone-testing.js,但找不到。请确保您的环境在 UserContext 的 resetFakeAsyncZone (C:\Users\zhenweiwong\Desktop\serenityjsframework\packages\core\testing\src\fake_async.ts:25:9) 中包含 zone.js/dist/zone-testing.js . (C:\Users\zhenweiwong\Desktop\serenityjsframework\packages\core\testing\src\before_each.ts:26:5) at processImmediate (internal/timers.js:439:21) at process.topLevelDomainCallback (domain.js :131:23) 消息:错误:在此配置中 Angular 需要 Zone.js 堆栈:错误:在此配置中,Angular 在新 NgZone 中需要 Zone.js (C:\Users\zhenweiwong\Desktop\serenityjsframework\packages\core\src\ zone\ng_zone.ts:129:13) 在 TestBedViewEngine._initIfNeeded (C:\Users\zhenweiwong\Desktop\serenityjsframework\packages\core\testing\src\test_bed.
在用户上下文。(C:\Users\zhenweiwong\Desktop\serenityjsframework\jasmine-test\spec\app1.component.spec.ts:32:29) 在

0 投票
0 回答
42 浏览

javascript - 量角器中的 Serenity JS by.tagName('a')[0] 返回未定义

您好,我是 JavaScript、TypeScript 和 Serenity JS 的新手。我正在尝试从网站的 HTML 中获取 URL。谷歌这个例子。

我的演员和剧本如下:''' describe( TodoMVC app, () => {

const links = Target.the('URL links').located(by.tagName('a'))

}); ''' 我正在尝试从 Serenity JS github 页面修改示例演示代码。Log.the(links[0]) 返回 undefined 而不是 URL。我该如何解决这个问题?提前致谢。

0 投票
0 回答
99 浏览

javascript - Serenity/JS - 如何测试文件下载?

我需要确保单击 ui 中的下载按钮确实以正确的大小下载了预期的文件。

我知道如何在按钮上执行单击或输入事件,但我可以分析下载吗?

提示:不幸的是,宁静/休息模块仅在我的工作机器上运行 400 错误,所以这不是替代方案。