在单元测试中点击 UIButton 内的特定 CGPoint
Posted
技术标签:
【中文标题】在单元测试中点击 UIButton 内的特定 CGPoint【英文标题】:Tapping a specific CGPoint inside UIButton in Unit Tests 【发布时间】:2016-11-25 13:17:42 【问题描述】:我有一个 UIButton
子类,它会覆盖 hitTest
方法。我需要测试在特定点点击是否符合我的要求。我打算在单元测试中进行此实现。
但是,模拟一般按钮点击不是问题,我不知道如何在特定坐标中模拟这种点击。请问有什么帮助/提示吗?
【问题讨论】:
我从来不需要这样做,但不是寻找“点击”,而是搜索“点击识别器”。我做了并发现了这个 3 岁的 SO 问题,它可能会给你一条路线(解决方案中有 3 个选项)。 [链接]***.com/questions/14094691/… @dfd 这些都不允许选择给定点。 【参考方案1】:嗯,事实上,在 UI 测试而不是单元测试中对其进行测试更容易。
但是:如果您也想这样做,请考虑您的 UI 组件可能会在其他类中使用,您可能不会“复制”所有测试。稍后有人可以从原始位置删除您的 UI 组件的使用,结果 - UI 测试。在这种情况下,您的 UI 组件将被使用但不会被测试!
所以我的建议是创建一个包含测试的组件的子项目。另一个好处是您无需等到这些额外的 UI 测试在您的主项目中完成。
【讨论】:
以上是关于在单元测试中点击 UIButton 内的特定 CGPoint的主要内容,如果未能解决你的问题,请参考以下文章
如何使单元格中的 UIButton 在被点击后立即保持特定状态?
修改 UICollectionView 中特定单元格中的 UIButton