1
2
似乎您打算做的更多是集成测试,而不是单元测试。这并不是要准确地指出措辞,而是要有所不同。单元测试平均测试方法 孤立地 在一个称为fixture的环境中,只为一个测试创建,结束然后删除。如果下一个案例需要相同的装置,则将重新创建装置的另一个实例。这样做是为了隔离测试,以便一个测试中的错误不会影响后续测试的结果。 通常,一个测试有三个步骤:
单元测试通常远离外部资源,如文件和数据库。相反 mock objects 用于满足要测试的类的依赖项。 但是,根据应用程序的类型,您可以尝试从应用程序本身运行测试。这不是“纯”的单元测试,但无论如何都是有价值的,特别是如果代码没有在编写时考虑到单元测试,那么它可能不够“灵活”,无法进行单元测试。 这需要一种特殊的执行模式,例如使用“-test”参数,该参数将正常初始化应用程序,然后调用将模拟输入的测试,并使用断言来验证应用程序是否按预期响应。同样,如果数据库连接已关闭(如果对象未被删除),则可以调用关闭代码并使用断言进行验证。 与单元测试相比,这种方法有几个缺点:它取决于配置文件(软件的行为可能因参数而异)、数据库(取决于其内容和连接能力)、测试不孤立…前两个可以通过使用配置的默认值并连接到中的测试数据库来克服。 测试 模式。 |
2
0
你在定义
|
mg610 · 如何开始C++单元测试 2 年前 |
Phil Gunning · 使用嵌套函数更改进行模拟测试 2 年前 |
shilin agre · 在Python中测试修饰函数 2 年前 |
SlipScout · Unittest只传递单个值,而不是获取多个值 2 年前 |
Alex · 从实际对象的实例返回默认模拟结果 2 年前 |