我想知道您对开发Web测试自动化框架的最佳实践的评论
我基本上都看过几个博客,终于说服在书中列出的大卫·伯恩斯方法- "硒1.0测试工具:初学者指南"中的第7章.
将特定页面的所有方法,验证器保存在单独的类文件中使其变得精致,可维护.
我想知道使用设计模式设计自动化框架的优势.我不完全相信哪种方法最好.请添加您的建议.可能每种方法我们都可以列出它的优缺点
如果我们将所有步骤存储在数据库表中,获取并执行这些步骤会不会很好?在这种情况下,如果任何测试失败,这将在表中更新,我们可以选择性地仅运行失败的测试.
此外,可以通过有选择地查询表来完成报告,并且可以通过作业从这些表中清除数据.保持测试输出文件的结果/解析结果也没问题.
如果此问题已在相关帖子中得到解答,请发布链接.在发布此问题之前我查了几篇帖子.
在网站中,与网站的用户交互是事件驱动的,用户可以与网站交互的方式可以是多种组合A-> B-> C或A-> C-> B. 进行所有可能的组合可提供最大范 基于模型的测试自动化涵盖所有可能的状
模拟所有可能状态的功能回归的自动化套件将模拟所有用户场景
请分享您对上述问题的最佳做法/建议.对于以上所有实现Dataproviders,以XML格式传递数据,我们可以利用测试数据管理.
我们需要考虑采用何种设计方法来开发基于模型的测试自动化套件.
有没有人尝试使用框架http://www.w3qa.eu/framework.html.任何评论/反馈请提供
理想情况下,在项目中,开发人员,测试人员,QA经理等都会对代码质量做出贡献.但是,如果你没有那种资源怎么办?例如,如果您只有三名开发人员并且没有资源聘请全职QA经理,您如何确保代码质量符合设定标准?
您在质量保证方面注意什么样的事情?质量不仅仅是代码执行它应该做的事情(代码通过自动测试正确测试).质量也与代码清晰(可读,可维护,结构良好,文档记录等)有关.
我期待听到您为团队应用了哪些流程,以确保质量符合既定标准.我们已经应用了一个流程,我们在开发人员之间轮换QA角色.每个开发人员一次负责一周的QA.修改每个变更集并检查现有测试是否通过,是否已编写新测试,代码是否干净,当然还有项目构建.
编辑:
当然,这个过程中的一些可以通过CI自动化,但我正在寻找的是人为因素的经验.我的意思是,你如何确保每个开发人员编写干净的代码并实际测试所有内容.除非您手动检查,否则测试覆盖范围不会告诉您是否所有内容都已经过测试(从自动角度来看,实际上不可能实现100%覆盖率).即使覆盖范围会告诉您某些内容已经过测试,但这并不意味着实际的测试会测试正确的内容.
可能重复:
您如何对Web应用程序进行压力测试?
目前我已经使用cc.net,watin和nunit配置了一个项目,现在我想对我的.net项目进行压力,负载和性能测试.我应该使用哪种开源工具,或者使用相同的工具来实现它,如果是,那么如何?
catch(Exception ex)
{
}
Run Code Online (Sandbox Code Playgroud)
什么是最好的方法?
将它们全部撕掉并让它崩溃?添加日志代码?留言箱?这是在C#中.
在 Cypress 中,.contains命令会生成所有匹配的元素,因此单击带有文本的下拉项.contains可以正常工作。但我面临的问题是,我需要单击文本为“导航标签”的下拉项目:问题出现是因为在同一个下拉列表中还有另一个选项,称为“新导航标签”,而它被按下,如它首先出现。
有没有办法单击与您想要的文本完全匹配的元素?
Given('I click on the {string} drop down option', option => {
cy.get(`[data-test="dropdown"]`)
.find('.item')
.contains(option)
.click();
});
Run Code Online (Sandbox Code Playgroud)
我使用 a 部分解决了这个问题.last(),但我发现这个解决方案非常模糊,因为我试图保持我的步骤尽可能可重用,这只是一个补丁,使其能够解决这个特定问题。
请注意,不可能对下拉列表中的每个特定项目进行数据测试,因为项目是直接从语义用户界面呈现的。
在尝试提倡更多的开发人员测试时,我发现"这不是QA的工作吗?" 经常使用.在我看来,为QA团队提供所有测试职责是没有意义的,但同时Spolsky和其他人说你不应该使用100美元/小时的开发人员做一些30美元/小时的测试人员可以做的事情.在拥有专门的QA团队的公司中,其他人的经验是什么?应该在哪里划分工作?
澄清:我的意思是QA作为验证和验证团队.开发人员不应该进行验证(以客户为中心的测试),但验证(功能测试)划分点在哪里?
我们不时会遇到可以通过更改配置,禁用逻辑的某些部分等来修复的生产错误.
我和我的经理争论过,我们应该在本地重现这些错误以确保修复工作,更重要的是,开发人员和QA可以将这些案例的检查作为常规版本的一部分.
我的经理认为是浪费时间,因为解决方案有效,因此无需在本地重现.
那么:我们应该尝试在本地重现以验证修复吗?如果你同意我的话,有关如何向我的经理出售这一点的任何指示?
我有一个需要测试的Flex应用程序,我们的QA部门非常喜欢使用某种形式的自动测试工具,如HP的QuickTest Pro(QTP).但是,QTP要求您编写一些自定义代码,如果您希望自动化一些自制组件...不幸的是,我们有一些第三方组件,我们没有源代码,所以我们不能没有真正的自定义代码没有拥有第三方组件的源代码.
是否有任何现有的框架和/或工具可以让我自动化测试,而无需编写可供非程序员使用的自定义代码(即一个不知道指针是什么的QA人)
我已经快速浏览了Flex-Monkey(一个免费的开源软件),这似乎是一个很有前景的项目,但它还处于初期阶段,我很快就需要一些东西(即昨天)
有任何想法吗?
我们在最新的iOS项目中使用Git Flow,我正在尝试使用QA的方式,以便他们可以测试最新版本,以及测试新功能,而无需担心修复了哪些错误哪个分支.
目前,他们已经在release/v1.0.1分支机构进行了测试,该分支机构已经修复了多个错误release/v1.0.同时,我一直致力于为v1.1发布计划的新功能,但同时从develop分支机构分支出来release/v1.0.1,因此没有任何错误修复.
今天,QA部门希望将我的新功能用于试驾.但是,如果我从我的分支创建它们,那么他们已经重新测试和关闭的错误修复都不在那里.因此,我会收到大量关于已经重新引入的错误的投诉和恐慌......我想避免哪些错误!
那么,让他们测试这个的最佳方法是什么?我可以合并release/v1.0.1到我的功能分支,但是我应该确保在发布develop之前我没有合并回来release/v1.0.1...而且我想在一定程度上,这打破了Git Flow方法.我可以创建一个全新的分支,仅用于QA测试,它将我的功能合并release/v1.0.1,但是我如何处理他们在这个分支上找到的任何错误?在QA之后,我将它合并到哪里?
最重要的是,我必须考虑构建号和版本号,以便它们有意义.目前,版本号是用于发布的版本号,并且构建号随着QA的每个新构建而递增.但是,如果他们从两个独立的分支接收构建,我最终可能会发生构建数字冲突,这会引起混淆.
处理这些问题的最佳方法是什么?
问题
这是我想要的一个常见问题.添加新代码转换为回归 - 现有的测试用例已过时.代码中的依赖关系意味着即使您知道如何修复此特定回归,也可能在两个方向的更多位置进行间接回归 - 传入和传出.
需求
我有一个运行SVN,Maven + Nexus,Sonar,Jenkins和JIRA,QC,QTP的商店.总而言之,这是一个良好的CI环境.
每一个新的构建我都会有新的回归案例.我希望在两个方向上找到Java包依赖关系并正确更新测试用例,以便涵盖所有类型的回归 - 直接和间接.这是一个更大的问题,因为我的单元测试覆盖率甚至没有接近50%,并且集成测试的自动化无法跟上开发的步伐.
我的选择
JArchitect,SONAR和CodePro将为您提供一个像这样或这样的简单矩阵.通过告诉我哪些用户和使用过的类受到影响,满足了我的一半要求.我想要的是更进一步,让工具告诉我哪些相应的测试用例受到影响,以及我是否需要更新和/或执行它们以覆盖我的回归风险.
Kalistick,Coverity和其他人可能会做我想做的事情 - 他们很难设置和配置,慢慢地与你的系统一起成长,因此不会立即产生效率,需要花费成本并需要学习曲线.
简短的问题
考虑到所有因素,如安装,学习曲线,成本,可用性或任何其他参数,我在上面使用哪些工具进行设置.
我已经阅读了关于静态分析的FAQ部分,很少有线程像Java的静态分析工具推荐?, /sf/ask/260134241/以及 对代码指标的迷恋是什么? 和许多相关的,但他们没有回答我的具体问题.
qa ×10
testing ×6
.net ×1
apache-flex ×1
c# ×1
cypress ×1
debugging ×1
dependencies ×1
flexunit ×1
git ×1
git-flow ×1
java ×1
load ×1
performance ×1
process ×1
qtp ×1
regex ×1
selenium ×1
testng ×1
unit-testing ×1