objective-c – 如何为Mac(Cocoa)应用程序创建端到端测试?

objective-c – 如何为Mac(Cocoa)应用程序创建端到端测试?,第1张

概述我一直在阅读很多关于测试驱动的开发,并决定我想要一个小项目.作为参考,我目前正在阅读“面向对象的增长软件,引导测试”. 我了解如何单元测试我的应用程序,以及如何对UI的某些部分进行单元测试,但我很难设置端到端测试.例如,测试我整个应用程序中的某个路径会产生正确的输出(这是我对端到端测试的基本了解). 没有必要模拟点击事件,但是有必要与UI进行某种连接. 我是否认为我需要结合“逻辑”测试(不启动应用 我一直在阅读很多关于测试驱动的开发,并决定我想要一个小项目.作为参考,我目前正在阅读“面向对象的增长软件,引导测试”.

我了解如何单元测试我的应用程序,以及如何对UI的某些部分进行单元测试,但我很难设置端到端测试.例如,测试我整个应用程序中的某个路径会产生正确的输出(这是我对端到端测试的基本了解).

没有必要模拟点击事件,但是有必要与UI进行某种连接.

我是否认为我需要结合“逻辑”测试(不启动应用程序进行测试),“应用程序”测试(启动应用程序测试)以及GHUnit等异步功能来完成此任务?

编辑:

在阅读下面的一些答案之后,听起来我正在寻找功能性的端到端测试,但我想我应该给出一个我想象的测试的例子.

>启动应用程序.
>使用测试用户凭据调用登录功能. (注:不一定需要UI自动化).
>验证窗口上的标签说“登录…”.
>成功验证用户后,验证标签现在说“欢迎,亚当!”.

KIF听起来像它可以工作,因为它有步骤检查UI元素的变化,它看起来像一个Mac OSX分支.我相信我也可以写一个小班,不断地轮询UI,在一段时间后,我期望和超时的变化,但我想知道这是否是正确的方法.

但是,也许我正在尝试以“面向对象的软件,测试指导”中的内容,并尝试将其应用于可可.

另一个更新:

所以我一直在读这个建议,检查了各个地方的链接,并开始执行一些,同时仍然引用这本书.我认为我真正想要得到的是测试驱动开发部分.在这本书中最为突出的是,他们从用户角度首先用验收测试描述了他们想要发生的事情.

我意识到,一旦我开始编写方法,就需要进行实体单元测试,但是我很想首先使用一些UI来编写高级验收测试.我已经开始写我自己的应用程序“驱动程序”类,使用一些类似的方法来GHasynctestCase的想法来帮助我完成这个.这听起来正确/有用吗?

我真的非常感谢所有的意见,迄今为止,他们肯定帮助我在自己的头脑里,我正在努力做什么以及各种测试领域.我会很快完成这个问题,因为它变得越来越大,所以最后的建议是欢迎的!

解决方法 我认为我从“成长中的面向对象软件”获得的关键是尽可能地从UI中解耦.没有代码来看,更难提供建议,但是随着你的修订,我会认为从UI中分离出“验证标签说..”.什么是设置此消息,您可以测试该事件?

您可以从UI中脱离的越多,您可以单独测试(更快更容易),而不是集成UI元素的其他框架或驱动程序.

总结

以上是内存溢出为你收集整理的objective-c – 如何为Mac(Cocoa)应用程序创建端到端测试?全部内容,希望文章能够帮你解决objective-c – 如何为Mac(Cocoa)应用程序创建端到端测试?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1031734.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存