2011-03-01 45 views
1

我有一个简短的问题,我环顾网站,无法找到与我想问的相关的另一个问题。我正在尝试实施Selenium IDE并将其用于公司网站。我希望能够记录注册并重新注册注册。我遇到的问题是测试回放时总是失败。原因是因为账户不能再次被重新创建。我有记录注册流程后可以通过测试吗?Selenium IDE - 注册测试(试图获得自动化部分的通行证)

回答

0

问题不在于您的Selenium测试,而在于网页本身。如果您试图再次注册同一用户,实际上预计会失败 - 您甚至可能会记录验证该用户的测试。

您必须选择 - 清理数据库,以便测试始终运行在相同的数据集上或使脚本更加智能智能。第一个选项要求您能够完全访问测试过的网站(通常情况下是这样),但您可以放心地假定测试结果大部分时间都是可预测的。

在另一方面通过使测试更加智能我的意思是使用随机用户名(或生成唯一的名称一些其他的方式) - 多编码,我不知道是否有可能与普通IDE硒。

+0

如果我不得不去更多的代码的路线和使用的东西一起硒IDE你有什么建议? – Yaasir

+0

我不是Selenium的专家,但我相信本机Selenium IDE格式(HTML)不允许使用这样的花式逻辑。但是,您可以立即将您的测试场景转换为各种编程语言,如Java,Ruby等。我使用Groovy并且它表现良好。拥有普通的编程语言,您可以随机/计算唯一的用户名并在输入框中输入。 AFAIK在Selenium IDE中只能使用静态字符串或简单变量。 –

+0

谢谢我想出了在注册过程中如何通过测试。 – Yaasir

1

这对我的作品,以创建一个随机的电子邮件ID-

<tr> 
    <td>storeEval</td> 
    <td>Math.round (Math.random() * 1357)</td> 
    <td>random</td> 
</tr> 
<tr> 
    <td>type</td> 
    <td>email</td> 
    <td>selenium${random}@domain.com</td> 
</tr> 

To create a random user 


    <tr> 
     <td>storeEval</td> 
     <td>Math.round (Math.random() * 1357)</td> 
     <td>random</td> 
    </tr> 
    <tr> 
     <td>type</td> 
     <td>user</td> 
     <td>selenium${random}</td> 
    </tr> 
0

您可以生成随机的数据,同时为电子邮件/名称

Username/ID:- javascript{Math.floor(Math.random()*11)} 
     --- increased number of digit by increasing number of 1 
Email :- javascript{"abc+" + Math.floor(Math.random()*11111) + "@gmail.com";} 
0

Yaasir的脚本,

硒IDE很高兴地执行JavaScript。这意味着,您不仅可以使用Math.random,还可以使用生成更多唯一标识符的东西。 我正在使用所有的方式时间戳。这很容易,结果非常独特,除非您在测试机器上重置时间,否则您不可能获得相同的编号(在这种情况下,获得相同标识符的可能性会略大于零)。 下面是一行我用

<tr> 
    <td>store</td> 
    <td>javascript{new Date().getTime()}</td> 
    <td>timestamp</td> 
</tr> 

结果,你会得到类似这样的号码1375400227202

相关问题