我最近参加了一次面试,他们问我:
如何减少回归套件的时间?
我回答说,我们只触发高级别的工作,剩下的部分我们手工操作,但面试官对我的回答并不满意。
在那之后,面试官询问了我项目的架构。我不明白为什么他们在问我如何减少回归套件所需的时间之后才问我这个问题。
发布于 2017-06-07 14:22:22
从你的第一个问题开始:
您的回答没有给面试官任何暗示,说明您理解自动化套件背后的技术挑战。他们期待的答案将包括可能的技术解决方案,例如:
Thread.Sleep
)这些答案对面试官来说都会比你给出的答案更令人满意。你的回答会给面试官留下的印象是,你不知道如何提高测试套件的性能或运行时间。
这引出了第二个问题:面试官想要更多地了解回归系统的体系结构。你在对其中一个答案的评论中提到他们想要一幅画。这是因为说明任何一种架构的最简单的方法是用一个图表。
他们希望你知道这样的事情:
您还可以介绍许多其他内容,包括您的测试所使用的软件和硬件体系结构的优缺点以及做出决定的原因。这样的回答会告诉面试官你知道你在用你的自动化做什么。
你给他们的第一个问题的答案暗示你不明白你在做什么,而你不能回答或理解他们的第二个问题很可能证实了这种印象。
这听起来可能很苛刻,但这就是面试的方式。面试官正在寻找不雇用你的理由。在这次采访中,你给了他们理由。
发布于 2017-06-07 13:39:33
如何减少回归套件的时间?
nose
和pytest
测试运行程序都支持多个CPU或主机(pytest-xdist
)之间的并行化。docker
)setUp
和tearDown
方法)中执行的东西通常不需要对每个方法执行,只能在每个测试类中应用一次(setUpClass
和tearDownClass
方法)。我还要指出的是,您从来不希望您的测试套件优化来影响测试的质量和可靠性。例如,sqlite3
可能比为测试目的编制一个完整的MySQL或PostgreSQL更容易、更快,但您可能不会在回归测试套件中捕捉到与数据库或数据库驱动程序相关的问题,这可能会导致拔毛。
发布于 2017-06-07 13:10:28
问题2:
建筑意味着:
-How确实看起来像您的自动化测试项目。您是否触发远程或本地测试,您是否使用CI系统,有多少服务器等。
问题1:
- You can use webdriver wait instead of Thread.Sleep
- You can run your test headless (phantomjs or firefox xvfb)
https://sqa.stackexchange.com/questions/27660
复制相似问题