将长XML字符串与导入连接起来

2024-10-03 09:16:21 发布

您现在位置:Python中文网/ 问答频道 /正文

在构建单元测试时,我希望创建一个长配置XML测试。在各种软件包(到目前为止有18个)中,我有许多测试模块。 对于那些测试给定包的XML读写的模块,我有用于该包的XML子树。每个子树都包含在一个带三个引号的字符串中

我正在尝试构建一个主XML测试模块,但还没有得到一个可以使用的三重引号XML字符串

包内internet\u xml我有:

INTERNET_XML = """
    <InternetSection>
        <LocaterUrlSection>
            <LocateUrl>http://elsewhere.com/ip/</LocateUrl>
            <LocateUrl>http://checkip.dyndns.com/</LocateUrl>
        </LocaterUrlSection>
        <UpdaterUrlSection>
            <UpdateUrl>http://freedns.somewhere.com/dynamic/update.php?abc</UpdateUrl>
        </UpdaterUrlSection>
        <ExternalIPv4>65.35.48.61</ExternalIPv4>
        <ExternalIPv6>1234:5678::1</ExternalIPv6>
        <LastChanged>2014-10-02 12:34:56</LastChanged>
    </InternetSection>
"""

在另一个测试守护进程更大部分的模块中,我试图通过从其他模块导入一堆片段来构建一个更完整的XML文档

from Modules.Computer.Internet.test.test_internet_xml import INTERNET_XML

LONG_XML = """\
<Pyhouse Version='2'>
"""
INTERNET_XML
WEB_SERVER_XML
XXX_MODULE_XML
"""
</PyHouse>
"""

如何构建这个可以解析并用于测试的长字符串

我试过parens,反斜杠,pluses,以及任何我能想到但不能让它工作的东西


Tags: 模块字符串comhttpxmlinternet引号externalipv4