Java 中的自动化 Web 测试工具

发布于 2024-08-04 19:24:07 字数 144 浏览 14 评论 0原文

我想测试一个基于 Ajax 的 Web 应用程序。我想用Java编写测试脚本并模拟Web浏览器。

Web 浏览器的模拟非常重要,因为我在 Web 应用程序中使用非常先进的 Ajax 库(例如 jQuery)。

关于我应该如何进行的任何想法?

I want to test a Ajax based web application. I want to write the test scripts in Java and simulate the web browser.

Simulation of a web browser is very important since Iam using very advanced Ajax library like jQuery in the web Application.

Any ideas on how I should proceed?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一杆小烟枪 2024-08-11 19:24:07

我想你可能想看看 Selenium

善良,

I think you might want to give Selenium a look.

Kindness,

Dan

穿透光 2024-08-11 19:24:07

如果您的应用程序大量依赖 Javascript,那么对浏览器进行“模拟”可能效果不会那么好:您可以使用一些爬虫来测试您的应用程序,但它们不太喜欢 JS。

针对您的情况,最好的解决方案可能是使用真实浏览器进行测试。

Selenium 工具套件对此非常好:它允许您的测试程序试用浏览器(一个真正的浏览器:火狐浏览器、互联网浏览器……);这意味着你的 JS 代码的执行方式与“真实”用户的执行方式完全相同。

例如,你可以让你的测试程序告诉浏览器打开一个页面,点击一个链接,检查页面中的一些内容,...如果有一些 JS 事件插入到链接上,它将被执行:链接上将会有一次真正的“点击”。

不过,使用像 selenium 这样的工具有一些缺点;其中一些是:

  • 您需要一台具有图形环境的机器,来启动浏览器(命令行不够)
  • 使用selenium进行测试需要时间:浏览和使用应用程序意味着加载所有CSS / JS /图像/广告/等等,对于每个页面;就像在真正的浏览器中一样——因为您使用的是真正的浏览器

但是这些测试非常好,并且对于测试整个应用程序很有用——即,更多的“功能测试”而不是“单元测试”。

Doing "simulation" of a browser will probably not work that well if your application relies on Javascript a lot : there are some crawlers that you can use to test your application, but they don't like JS that much.

The best solution in your case might be to use a real browser to do your testing.

The Selenium tool-suite is quite nice for that : it allows your testing programm to pilot a browser (a real one : firefox, internet explorer, ...) ; which mean having you JS code executed exactly the same way that it would be with a "real" user.

For instance, you can have your testing programm tell a browser to open a page, click on a link, check some content in the page, ... And if there was some JS event plugged onto the link, it will have been executed : there will have been a real "click" on the link.

Using a tool like selenium has some drawbacks, though ; some of them are :

  • you need a machine with a graphic environnement, to launch the browsers (command line is not enough)
  • tests with selenium take time : browsing and using the application means loading all the CSS/JS/Images/ads/whatever, for each page ; like in a real browser -- because you are using a real browser

But these tests are quite nice, and usefull to test the application as a whole -- ie, more "functionnal tests" than "unit-test".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文