Soap 如何从另一个库调用库?

Soap 如何从另一个库调用库?,soap,groovy,soapui,Soap,Groovy,Soapui,我正在尝试创建几个库并调用它们。我的目标是将第二个方法调用为第一个方法 例如,我创建了两个库,library1和library2 图书馆1代码 class LibraryScriptTest1 { def log def context def testRunner def library2 def LibraryScriptTest1(log, context, testRunner) { this.log = log

我正在尝试创建几个库并调用它们。我的目标是将第二个方法调用为第一个方法

例如,我创建了两个库,
library1
library2

图书馆1代码

class LibraryScriptTest1 {
    def log
    def context
    def testRunner
    def library2

    def LibraryScriptTest1(log, context, testRunner) {
        this.log = log
        this.context = context
        this.testRunner = testRunner

        library = testRunner.testCase.testSuite.project.testSuites["LibraryTestSuiteTest"]
        module = library.testCases["LibraryTestCaseTest2"].testSteps["LibraryScriptTest2"]
        module.run(testRunner, context)
        this.library2 = context.library2
    }

    int add(int firstNumber, int secondNumber) {
        return firstNumber + secondNumber
    }

    int multiply(int firstNumber, int secondNumber) {
        return firstNumber * secondNumber
    }

    int divide(firstNumber, secondNumber) {
        return this.library2.divide(firstNumber, secondNumber)
    }
}

context.setProperty("library1", new LibraryScriptTest1(log, context, testRunner))
图书馆2代码:

class LibraryScriptTest2 {
    def log
    def context
    def testRunner

    def LibraryScriptTest2(log, context, testRunner) {
        this.log = log
        this.context = context
        this.testRunner = testRunner
    }

    int substract(int firstNumber, int secondNumber) {
        return firstNumber - secondNumber
    }

    int divide(int firstNumber, int secondNumber) {
        return firstNumber / secondNumber
    }
}

context.setProperty("library2", new LibraryScriptTest2(log, context, testRunner))
错误

然而,我在
library1
中遇到了这个错误:

groovy.lang.MissingPropertyException:没有这样的属性:的库 类别:LibraryScriptTest1可能的解决方案:第行出现library2错误: XX

对应的行是下一行:

context.setProperty("library1", new LibraryScriptTest1(log, context, testRunner))

有人能帮我理解并解决这个问题吗?谢谢。

您尝试将值赋给未声明的变量:
library=testRunner.testCase.testSuite…
即使我使用
def library=…
问题也没有解决可能下一行中还有其他错误?这是唯一的错误消息。看,代码
库=…
模块=…
中存在一些明显的错误,因为这些变量没有声明。修复这些错误后,请编辑您的问题,并提供修复代码、错误消息,并标记发生错误的行(带注释)您尝试将值赋给未声明的变量:
library=testRunner.testCase.testSuite…
即使我使用
def library=…
问题也没有解决可能在下一行中还有其他错误?这是唯一的错误消息。看,代码
库=…
模块=…
中存在一些明显的错误,因为这些变量没有声明。修复这些错误后,请编辑您的问题,并提供修复代码、错误消息,并标记发生错误的行(带注释)