皆さん、こんにちは。
現在、MVC.Net を使用して統合テスト ポータルに取り組んでいます。
VB カスタム通信スクリプトを C# サービスに移行しようとしています。多くの新しい QTP スクリプトを正常に移行しましたが、会社が必要とするいくつかのレガシー スクリプトで行き詰まりました。
QTP スクリプト自体は、次の VB コード行を使用してカスタム パラメータが設定されるポイントまで正常にロードされます。
Set oParameters = oQTPApplication.Test.ParameterDefinitions.GetParameters()
oParameters.Item("sEnvironment").Value = sEnvironmentForDataTable
コードが他のさまざまなセットアップを実行すると (QTP を正常に開いて接続した後、変換された行にヒットします。
方法 1:
var parameters = this.Connection.Test.ParameterDefinitions.GetParameters();
parameters["sEnvironment"].Value = this.Test.TestEnvironment;
方法 2:
this.Connection.Test.ParameterDefinitions["sEnvironment"].DefaultValue = this.Test.TestEnvironment;
どちらも例外をスローします。
System.Runtime.InteropServices.COMException
要素が見つかりません。(HRESULT からの例外: 0x8002802B (TYPE_E_ELEMENTNOTFOUND))
System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData) で QTObjectModelLib.ParameterDefinitions.get_Item(Object Position) で TestLayer.Tests.Utilities.Qtp5Connection.SetTestSpecificParams() で
インターフェイスが指定されたパラメーターを見つけようとしているようですが、この場合、それが存在しないことは既にわかっているため、パラメーターを追加したいと考えています。スクリプト内で使用しますが、私の人生では-C#でカスタムパラメーターを追加する方法が見つかりません。VBが機能しているため、これは機能していたと思います...
どんな助けでも大歓迎です。