测试Set的打印输出

/*
*此测试程序的目的是检测Set的toString()方法是否是由叠代器来遍历集合的
*顺便检测低层存储顺序(Set提供的toString()方法应该是反映的底层结构)
*/

//PrintSet.java

package com.msn.spaces.bryantd001;
import java.util.*;

class MyHashSet extends HashSet{
      public String toString(){
            String result = "{";
            Iterator it = iterator();
            while (it.hasNext()){
                  result += it.next().toString() + ' ';
            }
            result += "}";
            return result;
      }
}

class  MyTreeSet extends TreeSet{
      public String toString(){
            String result = "{";
            Iterator it = iterator();
            while (it.hasNext()){
                  result += it.next().toString() + ' ';
            }
            result += "}";
            return result;
      }
}

class MyLinkedHashSet extends LinkedHashSet{
      public String toString(){
            String result = "{";
            Iterator it = iterator();
            while (it.hasNext()){
                  result += it.next().toString() + ' ';
            }
            result += "}";
            return result;
      }
}

public class PrintSet{
      static void fill(Set set){
            for (int i = 0; i < 5; i++){
                  set.add(new Integer(i));
            }
      }
     

      public static void main(String[] args){
            HashSet hs = new HashSet();
            TreeSet ts = new TreeSet();
            LinkedHashSet lhs = new LinkedHashSet();
            fill(hs);
            fill(ts);
            fill(lhs);

            System.out.println("Show the order of the Sets by the default toStrintg() way.");
            System.out.println(hs);
            System.out.println(ts);
            System.out.println(lhs);
            System.out.println();

           MyHashSet mhs = new MyHashSet();
           MyTreeSet mts = new MyTreeSet();
           MyLinkedHashSet mlhs = new MyLinkedHashSet();
           fill(mhs);
           fill(mts);
           fill(mlhs);
           System.out.println("Show the order of the Customized Sets by my toString() way.");
           System.out.println(mhs);
           System.out.println(mts);
           System.out.println(mlhs);  
     }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RobotFrameWork测试案例 测试案例 是⼀个⾃动测试框架,可到官⽹查看详细介绍。 安装 安装 Robot Framework 本⽂中的Robot framework安装在Win7 (32 bit) 平台上. 接下来按顺序安装以下的软件/包。 Software Version Post-steps Note Python python-2.7.6 Set ENV Var to PATH: C:\Python27 C:\Python27\Scripts Robot Framework robotframework-2.8.1.win32 wxPython wxPython2.8-win32-unicode- 2.8.12.1-py27 RIDE robotframework-ride- 1.2.2.win32 Installation via CLI with Administration Privilege 安装RIDE之后, 桌⾯快捷⽅式可能链接⽂件有问题,可以修改其⽬标为: C:\Python27\pythonw.exe-c "from robotide import main; main()" Demo: Scan Spyware via manual scan of X-Product 这⾥做个背景介绍:X-Product⽤于保护Linux服务器⽂件系统之上的⽂件。Manual Scan是其中的⼀个⼿动扫描⽂件的功能,将扫描出的病 毒进⾏隔离(或者清除等),并且记录log。 以下Demo中Robot Framework安装在Win7之上,⽽X-Product安装在另⼀台Linux服务器上。 1. 测试流程 测试流程 : 该框架⽤于管理测试⽤例,并且能够很好的⽣成测试报告。 : 在Robot Framework中,关键字有点像其他语⾔中的函数。同样关键字也具有三个部分:Keyword Name, Arguments, and Return values. 在 Robot Framework中写测试⽤例需要符合其表格语法的规范。 : 这是⼀个SSH/Sftp的库,可以⽤来和远程其他的机器进⾏通信。 2. 测试逻辑 测试逻辑 我们⽬标去测试X-Product的manual Scan功能能否发现⼀个spyware的测试样本。测试逻辑如下图所⽰: 3. Robot Framework实战 实战 ⾸先,SSH Library需要被安装. 如下表所⽰,按顺序安装以下的包. 安装完成之后可以使⽤命令 python -c "import SSHLibrary" 查看是否安装 成功 Package Version pycrypto pycrypto-2.6.win32-py2.7 paramiko paramiko-1.7.3-ctypes.win32 SSH Libraryrobotframework-sshlibrary-1.1.win32 然后, 如下图所⽰,⼯程 HelloRobot 被创建. HelloWorld 测试套被创建,通常⼀个测试套⾥⾯包含⼀个功能测试测试⽤例集 合.ManualScanForSpyware 是本次测试的⼀个测试⽤例. 接着, 如下图所⽰,在写测试⽤例之前,我们⾸先导⼊ SSHLibrary 和 User keyword resource. User keyword resource "setupkeyword.txt" 是 我们⾃⼰所写的⾼级关键字. 同时 Scalar Variables 被创建,如下图所⽰: 如下图所⽰,之前提到的User keywordresource 被创建. ⾼级关键字 SetupForMS 连接到需要测试的SPLX服务器,发送⼀个shell脚本 "setup.sh" ,然后发送⼀个命令去执⾏"setup.sh". 再接着, 如下图所⽰, Setup 负责在执⾏测试⽤例之前的清理⼯作. 这⾥⾼级关键字 SetupForMS 来完成测试⽤例执⾏前的清理⼯作. 测试步骤 如下: [Step1]. 连接到服务器 [Step2]. 登陆到服务器 [Step3]. 发送病毒样本"spyware.exe"到测试服务器 [Step4]. 发送测试脚本"testscript.sh"到测试服务器 [Step5]. 发送命令去执⾏脚本"testscript.sh" [Step6]. 从输出中获取测试结果 [Step7]. 关闭和服务器之间的连接 [Step8]. 对测试结果打印Log [Step9]. 查看是否测试成功 最后, 我们来执⾏这个测试⽤例. 如下图所⽰, 我们可以从RIDE中直接看到测试结果和测试的log. 我们也可以通过点击图中的按钮 Report/Log,来查看HTML

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值