testing - 在功能自动化中处理输入和输出?

标签 testing automation automated-tests bdd

假设您必须测试一种从软件中获取两个数字之和的新方法,并且您必须测试该功能并执行 BDD 自动化。 从下面两个中可以看出什么是更好的自动化方法(以及为什么)?

1) 使用固定输入并期望相同的输出。例如:输入 -> 3,5 输出 -> 8

2) 在每次运行中使用随机的两个数字,并根据常规总和对其进行验证。

最佳答案

第一个。

BDD 与测试无关;它是关于使用示例来说明所需的行为。我们使用的例子是“范例”;专门为该插图挑选的。

在您的情况下,总和是一个非常微不足道的问题。但是,当我们处理更复杂的业务行为时,我们会问,“你能举个例子吗?”接下来的对话是 BDD 中最重要的部分。从中,我们得到了我们将要处理的输入类型的真实例子,不仅是预期的输出,还有输出的值(value),以及它对谁有值(value)。

一旦我们将场景自动化,他们就会提供测试作为一个很好的副产品,但这并不是他们所做的全部。它们也是活文档。业务人员可以阅读它们以了解系统的作用,团队成员可以使用它们来感受已有的功能。

如果场景是通用的(“一个随机数”、“另一个随机数”和“一个结果”)而不是特定的(“2”、“3”和“5”),那就更难了。

关于testing - 在功能自动化中处理输入和输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54944145/

相关文章:

windows - 使用 BAT/PS 脚本自动安装

reactjs - store.dispatch 无法读取未定义的属性 'then'

python - 如何在我的代码中使用 python 生成 html 测试报告

testing - 如何使用 HTTP 基本身份验证登录以访问网站 - Test Cafe with Gherkin and cucumber

jQuery - 如何在不单击的情况下为单击功能设置动画(类似幻灯片放映) - 这可能吗?

java - 显式等待给定操作(错误) - Selenium Webdriver

android - 如何在没有 Activity 的情况下在 Android JUnit 测试的 UI 线程中运行代码?

javascript - 如何在网页上自动化按键事件

java - 在 Selenium WebDriver 中使用特定语言有好处吗?

selenium - jbehave 只运行特定的故事