Plut___o 2021-06-22 14:50 采纳率: 0%
浏览 19

有一个功能,将输入文件中的字符串行按字符序排序输出

有一个功能,将输入文件中的字符串行按字符序排序输出,例如tbda.bd.abo输出
abo. abd,bda)请写出测试用例,并请说明缘由

  • 写回答

1条回答 默认 最新

  • 码农阿豪@新空间代码工作室 Java领域优质创作者 2024-03-16 15:07
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    问题分析: 这个功能需要实现对输入文件中的字符串行按字符序排序输出,其中输入文件中的每一行都是由多个单词组成,单词之间用空格分隔,单词中可以包含字母和数字。最终的输出需按照单词中字符的字典序进行排序,对于相同的单词,按照输入文件中出现的顺序排序。例如输入文件为:
    abc dkk
    ab dkj
    abc de
    

    那么输出结果为:

    abc de
    abc dkk
    ab dkj
    

    因为 "abc de" 在字典序上最小,因此排在前面;而 "abc dkk" 和 "ab dkj" 的字典序相同,但 "abc dkk" 在输入文件中出现顺序更靠前,因此排在 "ab dkj" 前面。 根据问题分析,可以得到以下测试用例: 测试用例1:输入文件为空文件 缘由:测试功能在输入为空文件的情况下,是否能够正确处理,即能够正确识别空文件,在不输出任何内容的情况下结束程序。 代码示例:

    # testcase1: empty input file
    with open("input.txt", "w") as f:
        pass
    os.system("python sort_strings.py input.txt output.txt")
    with open("output.txt", "r") as f:
        assert f.read() == ""
    print("testcase1 pass.")
    

    测试用例2:输入文件中包含多行字符串同时存在大小写字母、数字和特殊字符 缘由:测试功能在输入包含多行字符串的文件时是否能够正确处理,即能够按照单词中字符的字典序进行排序,对于相同的单词,按照输入文件中出现的顺序排序。 代码示例:

    # testcase2: normal input file
    with open("input.txt", "w") as f:
        f.write("DkK abc\n2A 1B a,b+c\n1b a b c")
    os.system("python sort_strings.py input.txt output.txt")
    with open("output.txt", "r") as f:
        assert f.read() == "1b a b c\n2A 1B a,b+c\nDkK abc\n"
    print("testcase2 pass.")
    

    测试用例3:输入文件中只有一行字符串,且其中所有单词都相同 缘由:测试功能在输入只包含一行相同单词的文件时是否能够正确处理,即能够按照输入文件中出现的顺序对相同的单词进行排序,并输出该行单词。 代码示例:

    # testcase3: only one line with same words
    with open("input.txt", "w") as f:
        f.write("abc abc abc abc abc")
    os.system("python sort_strings.py input.txt output.txt")
    with open("output.txt", "r") as f:
        assert f.read() == "abc abc abc abc abc\n"
    print("testcase3 pass.")
    

    测试用例4:输入文件中只有一行字符串,且其中所有单词都不同 缘由:测试功能在输入只包含一行不同单词的文件时是否能够正确处理,即能够按照单词中字符的字典序进行排序,并输出该行单词。 代码示例:

    # testcase4: only one line with different words
    with open("input.txt", "w") as f:
        f.write("abc dkk a1b+c 0!@")
    os.system("python sort_strings.py input.txt output.txt")
    with open("output.txt", "r") as f:
        assert f.read() == "0!@\na1b+c\nabc\ndkk\n"
    print("testcase4 pass.")
    
    评论

报告相同问题?

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同