如何在Java中执行回归测试?是否有自动回归测试框架,或者您只是编写(JUnit)单元测试,以帮助确保反对回归?
是否有一种方法或一组最佳实践用于编码单元测试,以便它们还具有回归测试的双重目的,或者您是否需要将回归测试与单元测试分开?
我不能对代码的某些部分使用单元测试,所以我回到了回归测试.我想检查一下修改后我的程序是否以相同的方式运行.行为我的意思主要是数据结构状态.到目前为止,我将它们序列化为人类可读的文本格式,并在第一次运行时转储到某些文件中.然后在下一个转储中,我可以比较状态是否改变.如果更改来自新功能而不是来自错误,请更新它.
我可以使用库(C++)来组织所有这些.你知道任何?与转储文件一起,它将提供廉价,大规模的单元测试.
最麻烦的是序列化程序.有时我只是转储内存状态,但是当它不同时,很难进行逆向工程.所以我转向另一种方法.现在,在比较阶段,我将内存转储读入"幻像"对象,并运行专门的diff方法(operator ==,具有丰富的错误报告),有时比序列化为人类可读的文本格式更容易编写.
基本上我觉得要重新发明轮子,所以我的问题很普遍:
你如何进行回归测试(如果你这样做)?
你使用任何库/工具包吗?
你有没有为自己的需求实现一个?
只是出于好奇:
你有没有想过进行回归测试,但有些东西阻止了你?
我被教导说,回归测试很小(仅足以证明你没有通过引入变更或新模块来破坏任何东西)整体测试的样本.然而,Ron Morrison和Grady Booch的这篇文章让我有不同的想法:
理想的策略是将每个单元一次放入一个,执行广泛的回归测试,纠正任何缺陷,然后进入下一个单元.
同一份文件还说:
一旦添加少量单元,就会生成测试版本并进行"冒烟测试",其中运行少量测试以确保集成产品将按预期运行.目的既不是彻底测试新单元,也不是对整个系统进行完全回归测试.
在描述烟雾测试时,作者说:
烟雾测试对整个系统进行快速检查也很重要,而不仅仅是新组件.
我从未见过一起使用的"广泛"和"回归测试",也没有将回归测试描述为"完全回归测试整个系统".回归测试应该尽可能轻松快速.烟雾测试的定义就是我学到的回归测试.
我误解了我的教学内容吗?我教的不正确吗?或者对"回归测试"有多种解释?
我希望在一个相当大的Excel加载项上开始自动回归测试,该加载项围绕一个由几个带有标准控件的模态UserForms组成的GUI.
主要问题是我所研究的大多数自动化测试工具(Rational Robot,AutomatedQA TestComplete,网络自动化自动化等)并不完全支持VBA控件,所以他们的测试最终会重放鼠标点击和按键,所以不能真的可以维护.理想情况下,我需要一个识别VBA表单控件的测试工具,所以我可以说"按下此按钮并等待此列表框更改"而不是"单击(237,58)并等待500毫秒".
我还考虑将测试自动化作为VBA构建到加载项中,但是用户的大部分时间都花在与模式对话框的交互上,该对话框阻止VBA在后台运行,因此这几乎是不可能的.
我的问题 - 这里的任何人都有使用自动化测试工具的经验
a)识别VBA用户表单控件并可以可靠地与它们进行交互
b)是否支持使用条件分支和成功/失败日志记录的测试脚本,而不仅仅是记录和回放?
或者,有没有人知道我可以解决暂停VBA执行的模式对话问题的方法,以便我可以从VBA中驱动加载项?
我花了一段时间浏览QA论坛,但没有找到任何东西,所以任何帮助或线索将不胜感激.
谢谢你的帮助,
-Martin
我正在寻找一个用于CSS重构的可视化回归测试工具,并查看网站中是否存在任何意外的级联行为.
理想情况下,该工具可以抓取网站(甚至本地)并抓取每个页面的快照并将其存储在单个存储库中.
第二次运行时,它将显示自上次运行以来视觉上不同的页面.
更好的是:
对于性能测试,我想从生产服务器捕获一些流量,并将其用作重放请求到测试服务器的基础,以便在我们的开发环境中模拟实际负载.这些都是无状态查询,所以没有关于cookie,会话等的问题.
Apache日志时间戳将所有内容都缩短到1秒的分辨率,但这对于我们的峰值时间来说还不够精细.捕获更多细粒度时间戳进行重放的最佳方法是什么?是否有ab类似负载生成程序可以使用此数据来复制负载?
你如何单元测试Leaflet JS地图?
为了避免过多的测试,我想向质量保证(QA)团队提供关于在开发迭代之后必须对哪些特征进行回归测试的提示.你知道在C++和Subversion(和visual studio)开发环境中可以做到的工具吗?
有关用例的详细信息:
很可能这个工具会使用静态代码分析并使用subversion API.但它存在吗?
我正在测试一个用于创建简单的 base36 PostgreSQL 扩展的示例。
然而,我在编写和使用单元测试用例时遇到了问题(REGRESS =)。如果我使用sudo make installcheck,会出现错误
... ============== 删除数据库“contrib_regression” ==============
psql: FATAL: 角色“root”不存在……
看来 PostgreSQL 正在尝试使用当前登录用户来执行测试,在本例中该用户不存在。如果我省略了sudo并且只是这样做make installcheck,它会生成一个不同的错误说permission denied某事
创建数据库错误:权限被拒绝设置参数“lc_messages”命令失败:“/usr/lib/postgresql/9.5/bin/psql”-X -c“ALTER DATABASE \”contrib_regression \“将lc_messages设置为'C';ALTER DATABASE \"contrib_regression\" 将 lc_monetary 设置为 'C';更改数据库 \"contrib_regression\" 将 lc_numeric 设置为 'C';更改数据库 \"contrib_regression\" 将 lc_time 设置为 'C';更改数据库 \"contrib_regression\" 将 timezone_abbreviations TO '默认';” “contrib_regression”/usr/lib/postgresql/9.5/lib/pgxs/src/makefiles/pgxs.mk:272:目标“installcheck”的配方失败:*** [installcheck]错误2
我的问题是:
Makefile我可以在PostgreSQL 扩展中指定不同的用户(例如超级用户)吗?
或者,我可以解决问题以便非超级用户可以执行该操作吗installcheck?
注意:Makefile是:
EXTENSION = base36 # the extensions name
DATA = base36--0.0.1.sql # …Run Code Online (Sandbox Code Playgroud) postgresql makefile regression-testing postgresql-extensions
我正在尝试进行多元多元回归分析。幸运的是,我找到了一个很好的页面,演示了如何在 Stata 中执行此操作:
http://www.ats.ucla.edu/stat/stata/dae/mvreg.htm
问题是我正在使用 R,虽然我已经弄清楚如何在 R 中运行多元多元回归模型的基础知识,但我仍然不确定如何查看每个因变量的系数是否不同(如如链接所示)。有谁知道如何在 R 中计算这个分析?似乎查看相同的自变量是否对每个因变量产生不同的影响是一个非常有用的工具,我很想能够做到这一点!
更新:这是迄今为止我用自己的数据所做的可重现的示例:
# data
data(mtcars)
# fitting a multivariate multiple regression where mpg and cyl are predicted by wt and hp
car.mod <- lm(cbind(mpg,cyl) ~ wt + hp,data=mtcars)
# see if there is a multivariate effect of wt and hp
summary(manova(car.mod),test="W")
# Get coefficients for each dependent variable
summary(car.mod)
Run Code Online (Sandbox Code Playgroud)
在这个例子中我想知道的是如何测试“wt”在“mpg”和“cyl”上的等效性。显然,在 Stata 中使用该命令可以实现这一点test。
testing ×6
c++ ×2
css ×1
excel ×1
java ×1
leaflet ×1
makefile ×1
performance ×1
postgresql ×1
r ×1
stata ×1
svn ×1
unit-testing ×1
vba ×1