我正在创建一些具有各种输入的测试.我正在测试一个购买网站,其中包含新的和返回的用户类型,不同的产品,促销代码,付款选项.我觉得这是一个数据驱动的测试集,可能需要测试输入的csv或电子表格格式.
我一直在使用rspec,它非常适合我创建的最后一个测试集.
我想要一致的结果格式.我坚持如何使用RSpec数据表.有没有人使用RSpec和测试输入表?
提前感谢您提供直接解决方案或合理的建议.
我正在使用Watir进行自动化,创建一个我需要检查的电子邮件.我被指向电子邮件gem是最简单的方法.
我添加了以下代码,并能够从我的收件箱中收到第一封电子邮件.
require 'mail'
require 'openssl'
Mail.defaults do
retriever_method :pop3, :address => "email.someemail.com",
:port => 995,
:user_name => 'domain/username',
:password => 'pwd',
:enable_ssl => true
end
puts Mail.first
Run Code Online (Sandbox Code Playgroud)
我是这个论坛的新手并且有以下问题:
如何获取所有未读电子邮件?我试过Mail.all,Mail.first,Mail.last,但没有返回未读电子邮件.
如何获取电子邮件中存在的所有链接?或者从特定电子邮件发送邮件正文?我需要获取第一封未读电子邮件的电子邮件正文.
如果我的收件箱中有子文件夹,如何从特定文件夹收到电子邮件?
我的团队有一个使用watir的自动化解决方案.事实上,我们有两个版本,一个用于我们的软件,另一个用于另一个版本.我发现改变版本的watir并不容易,所以我想为我的新项目选择合适的版本(建立一个像Jim Knowlton谈论Watir Podcast#30的探索性框架).
我们的产品支持IE和Firefox.它可以支持将来的其他浏览器,例如Chrome或Safari.虽然我们创建了一个webdriver框架来更好地访问属性,但大多数接口技术都得到了watir的支持.
所以我认为Watir Webdriver可能是我今天最好的选择.没有使用它,甚至没有用它来评论别人的快乐,我只是不确定它是否准备好了.你怎么看?
这里是蟒蛇新手.我的类使用数据库连接来包装一些函数.我已经成功找到了一些基本的例子.对于我正在使用的更复杂的库,我找不到模拟数据库连接的近似示例.在我的,
class DBSAccess():
def __init__(self, db_con):
self.db_con = db_con
def get_db_perm(self, target_user):
## this is where I start having trouble
with self.db_con.cursor() as cursor:
cursor.execute("SELECT CAST(sum(maxperm) AS bigint) \
FROM dbc.diskspace \
WHERE databasename = '%s' \
GROUP BY databasename" % (target_user))
res = cursor.fetchone()
if res is not None:
return res[0]
else:
msg = target_user + " does not exist"
return msg
Run Code Online (Sandbox Code Playgroud)
其中db_con是teradata.UdaExec返回连接
udaExec = teradata.UdaExec (appName="whatever", version="1.0", logConsole=True)
db_con = udaExec.connect(method="odbc", system='my_sys', username='my_name', password='my_pswd')
dbc_instance = tdtestpy.DBSaccess (db_con) …Run Code Online (Sandbox Code Playgroud) 在黄瓜步骤定义中使用以下两个语句有什么区别?当我在Rubular中测试它们时,它们都能在我能想象到的所有情况下工作.在第二种情况下,我的语法突出显示更可能看起来很好(没有额外的双引号搞砸了).
即使在Stack Overflow语法高亮显示中,它也会在第一个语言中被搞砸.更常见的第一个例子有什么优点?
Given /^My name is "([^"]*)"$/ do |myname|
Given /^My name is "(.+)"$/ do |myname|
Run Code Online (Sandbox Code Playgroud) 我从一年开始使用黄瓜,而且几周之后我就在它中添加了page-object-gem.当我执行测试时,我收到消息:
DEPRECATION WARNING
您正在commentPage.rb中调用一个名为checkbox的方法:23:在`delete in delete_comment'中.
此方法在页面对象中不存在,因此它将传递给驱动程序.
此功能将在不久的将来删除.
请更改您的代码以调用正确的页面对象方法.
(我对其他案例也有同样的看法,但这个"琐碎"的例子应该更容易解释)
我试图避免这种情况,但这看起来很复杂.
对于测试,我正在检查一个页面,其中有一个表格.每行显示一行,我需要检查特定行的复选框.
我在pageObject中的代码:
table(:comment_list, :class => 'comments')
button(:delete, :text => "Delete")
def delete_comment (text)
self.comment_list_element.each do |row|
if row.text.include? "#{text}"
row.checkbox.set
self.delete
return true
end
end
false
end
Run Code Online (Sandbox Code Playgroud)
我是否需要对我的桌子进行预处理以在测试期间使用它?