自定义 UITableViewCell 的 iOS 单元测试

Posted

技术标签:

【中文标题】自定义 UITableViewCell 的 iOS 单元测试【英文标题】:iOS Unit Testing of Custom UITableViewCell 【发布时间】:2016-02-16 11:03:21 【问题描述】:

我正在对一个自定义UITableviewCell(TrasmitCell) 数据进行单元测试,我们在UITableviewCell、textLabel 和 DetailTextLabel 中有内置标签,而不是我创建了一个自定义单元格并显示在我的表格视图中。现在我想测试传递给该自定义单元格的数据。我能够获得内置方法 textLabel 和 DetailTextLabel 但我如何获得自定义单元格(TrasmitCell) 的内容。自定义单元格(TrasmitCell) 有两个标签和一个图像

- (void)testTableViewCellsHaveCorrectTextLabel 

NSIndexPath *rowIndex0 = [NSIndexPath indexPathForRow:0 inSection:0];

UITableViewCell *cell0 = [self.viewControllerUnderTest tableView:self.viewControllerUnderTest.tableView cellForRowAtIndexPath:rowIndex0];

XCTAssert([cell0.textLabel.text isEqualToString:@"abc"], @"ViewController under test is composed of a UITableView that has improperly initialized UITableViewCells");

//Instead of cell0.textLabel.text m looking for data from custom tableview cell objects

【问题讨论】:

【参考方案1】:

试试苹果 UI 测试——link

你也可以试试KIF

UI 测试 - 不是单元测试。您只能使用单元测试 (XCT) 来处理数据(例如,如果您计算输入数据并将结果保存在标签中)。

【讨论】:

以上是关于自定义 UITableViewCell 的 iOS 单元测试的主要内容,如果未能解决你的问题,请参考以下文章

iOS:通过自定义 UITableViewCell 上的 UITextView 进行选择

UITableViewCell 自定义CG绘制iOS 7

IOS:具有自定义 uitableviewcell 的动态高度

如何从自定义 UITableViewCell 触发 segue - iOS7

ios自定义UITableviewCell选择的背景颜色没有SelectedBackgroundView

iOS - 在自定义 UITableViewCell 中为 UITextField 添加目标/操作