Swift类测试奇怪的行为

时间:2015-01-20 18:47:06

标签: ios swift casting kif

我正在使用KIF 3.0,JKExpandTableView XCode 6.1.1和Swift。

我想使用JKExpandTableView waitForTappableViewWithAccessibilityLabel测试对象获取KIF。 在图片中,它会将UIView投射到UITableView,因为如果我将其投放到JKExpandTableView那里会有break on exception xcode

如果我将UITableView(实际上是图片中显示的JKExpandTableView)转换为JKExpandTableView,则不会传递if let语句。

检查图像中的红色矩形。

为什么不将演员表转换为JKExpandTableView

enter image description here

1 个答案:

答案 0 :(得分:0)

我怀疑这是因为你在应用程序和测试目标中包含JKExpandTableView。这意味着演员正在将AppModule.JKExpandTableView视为TestModule.JKExpandTableView而失败。

在这种情况下,解决方案是确保AppModule.JKExpandTableView可公开访问,将import AppModule添加到您的测试中(当然使用您自己的模块名称),然后执行以下操作:

let jkTableFilters = tableFilters as AppModule.JKExpandTableView