软件测试之单元测试编码规范

网友投稿 649 2022-11-29

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

软件测试之单元测试编码规范

本文的主要重点是针对日常开发阶段工程师可以做的事情,也就是单元测试而展开。

可能某个功能的实现代码有30行,测试代码有50行。单元测试的代码如何编写才更合理、整洁、规范呢?

1. 编码分模块展开

先贴一段代码。

- (void)testInsertDataInOneSpecifiedTable

{

XCTestExpectation *exception = [self expectationWithDescription:@"测试数据库插入功能"];

// given

[dbInstance removeAllLogsInTableType:HCTLogTableTypeMeta];

NSMutableArray *insertModels = [NSMutableArray array];

for (NSInteger index = 1; index <= 10000; index++) {

HCTLogMetaModel *model = [[HCTLogMetaModel alloc] init];

model.log_id = index;

// ...

[insertModels addObject:model];

}

// when

[dbInstance add:insertModels inTableType:HCTLogTableTypeMeta];

// then

XCTAssert(count == insertModels.count, @"「数据增加」功能:异常");

[exception fulfill];

}];

[self waitForExpectationsWithCommonTimeout];

}

可以看到这个方法的名称为 testInsertDataInOneSpecifiedTable,这段代码做的事情通过函数名可以看出来:测试插入数据到某个特定的表。这个测试用例分为3部分:测试环境所需的先决条件准备;调用所要测试的某个方法、函数;验证输出和行为是否符合预期。

其实,每个测试用例的编写也要按照该种方式去组织代码。步骤分为3个阶段:Given->When->Then。

所以单元测试的代码规范也就出来了。此外单元测试代码规范统一后,每个人的测试代码都按照这个标准展开,那其他人的阅读起来就更加容易、方便。按照这3个步骤去阅读、理解测试代码,就可以清晰明了的知道在做什么。

上一篇:APP测试中压力测试和性能测试差异
下一篇:软件测试的重要性
相关文章

 发表评论

暂时没有评论,来抢沙发吧~