我想在我的网页上自动化一些测试,主要用无效数据填写表单,看看会发生什么。可以使用Javascript吗?如果没有,用PHP可以吗?该脚本应该处理会话和cookie。
Here是一个非常简单的例子,有3页。在第一个中,您应输入“x”并单击“提交”,在第二个中您应输入“3”并单击“提交”。如果成功,最后一页应该显示“你得到了它!”。可以自动化,以便我加载脚本并立即看到“你得到它”吗? 请注意:为简单起见,这里没有cookies \ sessions,但我想要一个能够支持这些内容的答案。
iframe
制作另一个页面。但无法访问iframe
为方便起见,这里是代码:(你真的不需要它,但以防万一..)
的的index.html
<!DOCTYPE html>
<html>
First page: please enter x
<form method="post" action="next.php">
<input type="text" id="id" name="id" />
<input type="submit" />
</form>
<html>
next.php
<?php
if(isset($_POST) && isset($_POST['id']) && $_POST['id']!='x'){
echo '<script>window.location = "http://www.cs.bgu.ac.il/~kahilm/myNavigator/";</script>';
}
?>
<!DOCTYPE html>
<html>
Second page: please enter 3
<form method="POST" action="last.php">
<input type="text" name="code" />
<input type="submit" />
</form>
</html>
last.php
<?php
if(isset($_POST) && isset($_POST['code']) && $_POST['code']=='3'){
echo 'you got it!';
}else{
echo 'you sent something, please make it a "3"... :)';
}
?>
答案 0 :(得分:6)
考虑Selenium浏览器自动化框架 - 它允许您浏览页面,验证条件,填写表单。非常稳定,非常成熟。
答案 1 :(得分:2)
您应该以编程方式控制浏览器以执行此类测试。 Selenium是一个流行的选项,并且在文档中提到了PHP绑定(尽管我通常使用Perl或Python)。
答案 2 :(得分:1)
基于PHP的解决方案:不会从前端测试,只测试服务器后端,因此不会模拟实际输入。
JS:不会跨页面持续存在。
因此,您要么是在寻找浏览器扩展程序,要么是完全独立于浏览器的独立实用程序。
您可以尝试: