问题标签 [atdd]

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 回答
220 浏览

bdd - 示例规范在哪里补充/替换了传统的需求文档?

我试图了解 SBE 在哪里补充或替换了传统的需求文档。需求层次图显示了传统软件需求的三个层次。

SBE 替换了以下哪些项目(来自图表)以及它补充了哪些项目:

  • 愿景和范围文件
    • 业务需求
  • 用例文档
    • 用户要求
    • 商业规则
  • 软件需求规范
    • 系统要求
    • 功能要求
    • 质量属性
    • 外部接口
    • 约束

我对 SBE 的幼稚理解会说 SBE 只是软件需求规范的另一种形式。这个对吗?

0 投票
1 回答
440 浏览

bdd - jbehave 的 web-runner:有没有办法管理网络中的故事?

我想让我预先存在的 jbehave 故事显示在一些网络应用程序中,并使业务人员能够在网络 UI 中创建和保存修改后的故事,以及通过网络运行它用户界面。

我已经尝试过 jbehave 网络运行器(http://jbehave.org/reference/web/preview/customising-web-runner.html),但无法保存测试并通过网络进行管理。是否有一些解决方案可以使

PS 是的,我相信 jbehave web-runner 是为了做这些事情而创建的,但是我看不到它正常工作:当我启动它时,我在 web 界面中看不到 trader.story,它存在于代码中;当我提交故事并运行它时,我得到

当我去看故事时:

并尝试下载 txt 输出,我得到

那么,运行有什么问题呢?

0 投票
2 回答
241 浏览

ruby-on-rails - sprint 中的黄瓜场景故事吗?

我刚开始在一个新项目中使用 Cucumber 和 BDD/ATDP(验收测试驱动计划),我不能 100% 确定故事的组成部分,我最终将使用哪些场景作为我的 sprint 故事?我猜这应该是这种情况,但不是 100% 确定我是否正确,或者是不是下面示例中的功能描述就是故事?

例如

功能:能够复制发票记录

0 投票
1 回答
425 浏览

integration-testing - ATDD 与集成测试

据我了解,ATDD 是从 QC/QA 的角度来测试整个过程。这种对整个过程的测试,不同模块如何集成,听起来像是集成测试的定义。验收测试驱动开发与集成测试有何不同?还是它们是同义词?

0 投票
2 回答
382 浏览

tdd - 验收测试的边界

我的应用程序,除其他外,使用一些爬虫来读取另一个应用程序的远程 xml 提要公开的信息(我们对此不负责)。抓取的数据稍后会显示给用户。xml 可能包含简单的数据和链接,如果我们需要额外的数据,我们会遵循这些数据和链接。

我们系统中的测试既是单元测试,即我们正确解析 xml 文档的测试,也是验收测试,旨在测试我们在 ui 中显示的内容。

我在推理验收测试,这就是这个问题的意义所在。现在,对于每个验收测试,我们都会带一个嵌入式 http 服务器来提供一些测试数据,这些数据是特定于测试的。然后我们启动我们的应用程序,抓取测试数据并验证测试标准。虽然这种方法具有端到端测试整个系统的优势,但它也有副作用,即每次我们添加新的验收测试时都会显着增加构建时间。

这是验收测试的正确方法吗?我想知道,既然提供提要的系统是外部系统,那么在单元级别测试网络通信层和爬虫并假设数据已经被爬取并运行验收测试不是更好吗?

我想听听别人的一些想法。:-)

谢谢!

0 投票
2 回答
156 浏览

tdd - 行为驱动开发中的测试数据

我在验收测试驱动的开发硕士论文中阅读了以下段落。这样对吗?如果不是,我们如何在 BDD 中使用测试数据?

** 本章继续描述 BDD 的主要问题——它不适合任何类型的软件。BDD 强调行为并抽象出测试数据以使测试看起来简单易读。但是,行为并不是唯一的属性制作软件复杂的。例如,财务软件具有大量重要数据,测试框架的用户也需要访问这些数据。将此类数据抽象出来的原则并不能用作改善利益相关者之间沟通的工具。**

0 投票
1 回答
1375 浏览

c# - 是否可以从正在运行的 MVC Web 应用程序的测试中调用 ASP.NET MVC 控制器方法?

我正在学习 ASP.Net MVC,并且我读过它很容易进行单元测试,因为控制器可以被实例化并调用它们的方法而无需部署到 Web 服务器,并且很容易模拟依赖对象等。 (请参阅http://msdn.microsoft.com/en-us/library/gg416511(VS.98).aspx和其他多个参考资料)。

也可以通过浏览器使用 Selenium 或 Waitin 在 MVC 应用程序上运行验收级别测试,使用您自己喜欢的框架来编写和控制测试。

我想知道的是,是否可以通过调用已部署、正在运行的 MVC 应用程序(例如从 Specflow)中的控制器方法在验收测试级别运行 ATDD 测试,而不必通过 UI 进行测试?

或者更一般地说,是否可以从测试中以编程方式调用 ASP.Net MVC 应用程序的 API?

似乎在单元测试和基于浏览器的 UI 测试之间可以测试的内容存在差距。有没有人能够弥合这个差距?

0 投票
1 回答
356 浏览

java - 结合元参数和示例表时如何解决jbehave错误

我正在使用由 0.9.229 thucydides-jbehave 原型制作的项目。在这里,我有一些 jbehave 故事:

当 Example table 与 meta 共存时,步骤 F 中会发生错误。正如调试器所揭示的,传递给底层方法的值

in<reg1>实际上不是 Meta 中的 @reg1 值,而是……示例的“数字”值。而不是传递的值<registrator1>实际上是从不清楚的经度值。所以,问题是我如何在同一个故事和同一个场景中正确地将 Meta 与 Example 结合起来?

0 投票
1 回答
10737 浏览

java - RobotFramework:超过启动关键字的最大限制

我是 RobotFramework 的新手,我正在尝试做一个简单的测试。使用 Log 关键字打印“Hello world”并从 java 类中获取值(我在 Ride 上使用 jybot):

但是当我运行它时,测试不会通过,它会给我这个错误:

我已经搜索过了,但我仍然对此一无所知。

0 投票
1 回答
254 浏览

android - 使用 calabash-android 解锁图案

我正在为其进行自动化测试的部分 Android 应用程序有自己的模式解锁组件,我需要一种在 calabash-android 中绘制“Z”模式的方法。该模式由三个拖动/滑动动作组成,但它们需要是连续的触摸。目前我可以将“Z”的所有三个部分作为单独的 perform_action('drag') 命令执行:

但我需要能够一口气完成所有这些才能通过测试,我不知道该怎么做。我想这与葫芦机器人对多点触控手势的支持有关,但我不知所措。