QTP 数据库
我进行连接数据库(Oracle)时,当执行到Cnn.Open。。。时,总提示“ 未发现数据源名称并且未指定默认驱动程序”
到此程序无法进行下去,
连接代码如下。
Dim Cnn
Set Cnn = CreateObject("ADODB.Connection")
Cnn.ConnectionString ="DRIVER={Oracle in OraHome92};SERVER=DBGlobal;UID=crjpre;PWD=crjpre;DBQ=ora29;DBA=W;APA=T;EXC=F;XSM=Default;FEN=T;QTO=T;FRC=10;FDL=10;LOB=T;RST=T;GDE=F;FRL=Lo;BAM=IfAllSuccessful;MTS=F;MDI=Me;CSR=F;FWC=F;PFC=10;TLO=O;"
Cnn.Open
If Cnn.State = 0 Then
Reporter.ReportEvent micFail, "testing", "连接数据库失败"
else
Reporter.ReportEvent micPass, "testing", "连接数据库成功"
End If
想问下知情者,用QTP来连接数据库时,除了写这些语句,还有其他的什么准备工作要做吗?
或者是本身我的语句就有问题啊?
这个也是我在论坛里搜索的。
我的PL/SQL是可以连接数据库进行相关操作的。 查查你数据源设置是否正确啊
呵呵
这个你最好问一下公司的程序员吧,他们会更清楚。我觉得QTP的最大好处就是,可以不需要了解太多代码而完成测试。
我是一个非计算机专业的测试员,对QTP的感觉比较好。
有些时候,加代码会使过程优化,但也可找些其它的“死办法”解决。
不过,对于楼主的问题,我可能帮不上什么忙。不知是不是要去设置ODBC,或是QTP里需要改什么设置吧。 数据源应该就是DBQ=ora29这个字段的设置咯.
我用pl/sql 用这个名字是可以连接得到的.
想来应该是没有问题的.
听斑竹的意思就是没有其他设置了咯.只要写这几句语句咯? 急急!
还是不明白,为什么QTP对数据库(oracle)的连接,就是连接不上。
我在论坛里看到了两个版本。
版本1:
Set Cnn = CreateObject("ADODB.Connection")
Cnn.ConnectionString = "Provider=MSDAORA.1;Data Source=DBSERVER;Password=XXX;User ID=XXX;Persist Security Info=True;"
版本2:
Set Cnn = CreateObject("ADODB.Connection")
Cnn.ConnectionString ="DRIVER={Oracle in OraHome92};SERVER=DBGlobal;UID=crjpre;PWD=crjpre;DBQ=ora29;DBA=W;APA=T;EXC=F;XSM=Default;FEN=T;QTO=T;FRC=10;FDL=10;LOB=T;RST=T;GDE=F;FRL=Lo;BAM=IfAllSuccessful;MTS=F;MDI=Me;CSR=F;FWC=F;PFC=10;TLO=O;"
1、在这两个版本中版本1是使用的Provider=MSDAORA.1,另外一个DRIVER={Oracle in OraHome92},想请教下各位,这个参数的选择以及他们后面的值的选择有什么根据没有。还是都可以。
2、版本1,用的Data Source=DBSERVER,而另外一个用的是SERVER=DBGlobal和DBQ=ora29,这个在我的oracle中又应该对应着哪几个值呢。
下面是我的oracle设置:
ora29 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.29)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = DBGlobal)
)
我需要操作的数据库地址为192.168.0.29
[ 本帖最后由 kittychen20 于 2006-9-8 12:10 编辑 ] ODBC设置正确吗? 请问怎么设置ODBC?
如果说在QTP里面还有这样一个单独的设置的话,
我好象没有设置.我什么设置都没有做.只是单独的写了这些语句. 没有哪位知道可以告诉我吗? strCnn = "Provider=MSDAORA.1;Data Source=yourtnsname;Password=yourpassword;User ID=youruserid;Persist Security Info=True"
Set Cnn = CreateObject("ADODB.Connection")
Cnn.Open strCnn
试试这种连接模式 原帖由 kittychen20 于 2006-9-8 14:26 发表
请问怎么设置ODBC?
如果说在QTP里面还有这样一个单独的设置的话,
我好象没有设置.我什么设置都没有做.只是单独的写了这些语句.
你可以这样做:
点击菜单
1.insert--checkpoint--database checkpoint
2.在弹出来的窗口选择第二项 specify SQL ....,然后点下一步,再点create
自己创建一下ODBC,如果能链通ORACLE,那在QTP回放应该没有问题
我的是LINUX AS4+ORACLE 10G
在QTP中的脚本是
Dim Cnn
Set Cnn = CreateObject("ADODB.Connection")
Cnn.ConnectionString ="DRIVER={Oracle in OraClient10g_home1};SERVER=TEST;UID=system;PWD=test;DBQ=TEST;DBA=W;APA=T;EXC=F;XSM=Default;FEN=T;QTO=T;FRC=10;FDL=10;LOB=T;RST=T;BTD=F;BAM=IfAllSuccessful;NUM=NLS;DPM=F;MTS=T;MDI=Me;CSR=F;FWC=F;FBS=60000;TLO=O;"
Cnn.Open
If Cnn.State = 0 Then
Reporter.ReportEvent micFail, "testing", "连接数据库失败"
else
Reporter.ReportEvent micPass, "testing", "连接数据库成功"
回放是通过的!
先确定你的ODBC能否正确连通先! 谢谢上面个各位,这段时间忙别的去了,一直没有时间上来看,
通过开发人员的帮助,我已经连接上数据库了.是我把本地服务器的名称
给弄成数据库服务器的名称了. qtp的debug功能当然不太强大乐。。。。用过的感觉.net得最好,准确定位在哪一行,并且能使你基本上能判断出是设么错误 QTP 用的是VBScript, 这是一种脚本语言。它的Debug功能当然不会很强了。毕竟它不是编程语言(Programming Language)呀。任何语言和工具都有利有弊。世界上没有一种十全十美的语言或工具。 :)
页:
[1]