⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testframe.java

📁 测试一个循环路径 是对他的条件测试 覆盖测试和条件组合测试覆盖的测试
💻 JAVA
字号:
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;


public class TestFrame extends JFrame {
	
	
	private static final long serialVersionUID = 1L;
	
	
	
	
	public static void main(String[] args) {
		TestFrame frame = new TestFrame();
		frame.setLocation(120, 150);
		frame.setSize(800, 500);
		frame.setVisible(true);

	}
	
	
	
	public boolean isNumber(String str){
		int length = str.length();
		if(str.charAt(0) == '-' || str.charAt(0) >= 48 && str.charAt(0) <= 57){
			
			for(int i = 1; i < length; i ++){
				
				if(str.charAt(i) < 48 || str.charAt(i) > 57){
					return false;				
				}
				break;
			}
			return true;
			
		}else
			
			return false;
		
		
	}
	public TestFrame() {
		super();
		//super();
		getContentPane().setLayout(null);

		final JLabel jlb_a = new JLabel();
		jlb_a.setFont(new Font("宋体", Font.BOLD, 60));
		jlb_a.setHorizontalAlignment(SwingConstants.CENTER);
		jlb_a.setText("a");
		jlb_a.setBounds(31, 23, 60, 55);
		getContentPane().add(jlb_a);

		final JLabel jlb_b = new JLabel();
		jlb_b.setHorizontalAlignment(SwingConstants.CENTER);
		jlb_b.setFont(new Font("宋体", Font.BOLD, 60));
		jlb_b.setText("b");
		jlb_b.setBounds(31, 104, 60, 55);
		getContentPane().add(jlb_b);

		final JLabel jlb_c = new JLabel();
		jlb_c.setHorizontalAlignment(SwingConstants.CENTER);
		jlb_c.setFont(new Font("宋体", Font.BOLD, 60));
		jlb_c.setText("c");
		jlb_c.setBounds(31, 182, 60, 55);
		getContentPane().add(jlb_c);

		final JTextField jtf_a = new JTextField();
		jtf_a.setFont(new Font("宋体", Font.BOLD, 36));
		jtf_a.setBounds(97, 30, 80, 48);
		getContentPane().add(jtf_a);

		final JTextField jtf_b = new JTextField();
		jtf_b.setFont(new Font("宋体", Font.BOLD, 36));
		jtf_b.setBounds(97, 104, 80, 48);
		getContentPane().add(jtf_b);

		final JTextField jtf_c = new JTextField();
		jtf_c.setFont(new Font("宋体", Font.BOLD, 36));
		jtf_c.setBounds(97, 189, 80, 48);
		getContentPane().add(jtf_c);

		final JLabel jlb_a_3 = new JLabel();
		jlb_a_3.setHorizontalAlignment(SwingConstants.CENTER);
		jlb_a_3.setFont(new Font("宋体", Font.BOLD, 60));
		jlb_a_3.setText("->");
		jlb_a_3.setBounds(183, 182, 80, 55);
		getContentPane().add(jlb_a_3);

		final JLabel jlb_a_3_1 = new JLabel();
		jlb_a_3_1.setHorizontalAlignment(SwingConstants.CENTER);
		jlb_a_3_1.setFont(new Font("宋体", Font.BOLD, 60));
		jlb_a_3_1.setText("->");
		jlb_a_3_1.setBounds(183, 104, 80, 55);
		getContentPane().add(jlb_a_3_1);

		final JLabel jlb_a_3_2 = new JLabel();
		jlb_a_3_2.setHorizontalAlignment(SwingConstants.CENTER);
		jlb_a_3_2.setFont(new Font("宋体", Font.BOLD, 60));
		jlb_a_3_2.setText("->");
		jlb_a_3_2.setBounds(183, 23, 80, 55);
		getContentPane().add(jlb_a_3_2);

		final JTextField jtf_c_1 = new JTextField();
		jtf_c_1.setFont(new Font("宋体", Font.BOLD, 36));
		jtf_c_1.setBounds(269, 189, 80, 48);
		getContentPane().add(jtf_c_1);

		final JTextField jtf_c_2 = new JTextField();
		jtf_c_2.setFont(new Font("宋体", Font.BOLD, 36));
		jtf_c_2.setBounds(434, 189, 80, 48);
		getContentPane().add(jtf_c_2);

		final JTextField jtf_c_3 = new JTextField();
		jtf_c_3.setFont(new Font("宋体", Font.BOLD, 36));
		jtf_c_3.setBounds(579, 189, 80, 48);
		getContentPane().add(jtf_c_3);

		final JLabel jlb_a_3_3 = new JLabel();
		jlb_a_3_3.setHorizontalAlignment(SwingConstants.CENTER);
		jlb_a_3_3.setFont(new Font("宋体", Font.BOLD, 60));
		jlb_a_3_3.setText("->");
		jlb_a_3_3.setBounds(362, 182, 80, 55);
		getContentPane().add(jlb_a_3_3);

		final JLabel jlb_a_3_4 = new JLabel();
		jlb_a_3_4.setHorizontalAlignment(SwingConstants.CENTER);
		jlb_a_3_4.setFont(new Font("宋体", Font.BOLD, 60));
		jlb_a_3_4.setText("->");
		jlb_a_3_4.setBounds(508, 182, 80, 55);
		getContentPane().add(jlb_a_3_4);

		final JButton button = new JButton();		
		button.setFont(new Font("宋体", Font.BOLD, 24));
		button.setText("测试");
		button.setBounds(684, 189, 88, 48);
		getContentPane().add(button);

		final JTextField jtf_a_1 = new JTextField();
		jtf_a_1.setFont(new Font("宋体", Font.BOLD, 36));
		jtf_a_1.setBounds(269, 30, 80, 48);
		getContentPane().add(jtf_a_1);

		final JTextField jtf_b_1 = new JTextField();
		jtf_b_1.setFont(new Font("宋体", Font.BOLD, 36));
		jtf_b_1.setBounds(269, 103, 80, 48);
		getContentPane().add(jtf_b_1);

		final JLabel jlbPath = new JLabel();
		jlbPath.setHorizontalAlignment(SwingConstants.CENTER);
		jlbPath.setFont(new Font("宋体", Font.BOLD, 36));
		jlbPath.setText("路径");
		jlbPath.setBounds(381, 23, 88, 41);
		getContentPane().add(jlbPath);

		final JLabel jlbCondition = new JLabel();
		jlbCondition.setHorizontalAlignment(SwingConstants.CENTER);
		jlbCondition.setFont(new Font("宋体", Font.BOLD, 36));
		jlbCondition.setText("条件");
		jlbCondition.setBounds(381, 74, 88, 41);
		getContentPane().add(jlbCondition);

		final JLabel jlbJudge = new JLabel();
		jlbJudge.setHorizontalAlignment(SwingConstants.CENTER);
		jlbJudge.setFont(new Font("宋体", Font.BOLD, 36));
		jlbJudge.setText("判定");
		jlbJudge.setBounds(381, 128, 88, 41);
		getContentPane().add(jlbJudge);

		final JLabel jlb_path = new JLabel();
		jlb_path.setFont(new Font("宋体", Font.BOLD, 36));
		jlb_path.setBounds(475, 25, 260, 41);
		getContentPane().add(jlb_path);

		final JLabel jlb_Condition = new JLabel();
		jlb_Condition.setFont(new Font("宋体", Font.BOLD, 36));
		jlb_Condition.setBounds(475, 74, 260, 41);
		getContentPane().add(jlb_Condition);

		final JLabel jlb_Judge = new JLabel();
		jlb_Judge.setFont(new Font("宋体", Font.BOLD, 36));
		jlb_Judge.setBounds(475, 128, 260, 41);
		getContentPane().add(jlb_Judge);

		final JLabel jlbBottom = new JLabel();
		jlbBottom.setHorizontalAlignment(SwingConstants.LEFT);
		jlbBottom.setFont(new Font("宋体", Font.BOLD, 38));
		jlbBottom.setText("T1:a>0,T2:b>0,T3:a>1,T4:c>1或c/a>1");
		jlbBottom.setBounds(49, 273, 723, 55);
		getContentPane().add(jlbBottom);
		

		final JLabel jlb_error = new JLabel();
		jlb_error.setForeground(Color.RED);
		jlb_error.setHorizontalAlignment(SwingConstants.LEFT);
		jlb_error.setFont(new Font("宋体", Font.BOLD, 38));
		jlb_error.setBounds(49, 342, 723, 55);
		getContentPane().add(jlb_error);
		
		button.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				float a, b, c;
				String pathString ="1", conditionString = "", judgeString = "";
				
				if(!(isNumber(jtf_a.getText().trim()) && isNumber(jtf_a.getText().trim())
						&& isNumber(jtf_a.getText().trim()))){
					 
				 
					jlb_error.setText("数据格式错误!");
					return;
				 
				}
				
				jlb_error.setText("");
				
				a = Float.parseFloat(jtf_a.getText().trim());
				b = Float.parseFloat(jtf_b.getText().trim());
				c = Float.parseFloat(jtf_c.getText().trim());
				
				if(a>0 && b>0)
				{			
					c=c/a;
					pathString=pathString+" 2";
					judgeString += "M";
				}
				else
				{
					pathString=pathString+" 3";
					judgeString += "/M";
				}
				jtf_c_1.setText("" + c);
				
				if(a > 0)
					conditionString += "T1,";
				else
					conditionString += "F1,";
				
				if(b > 0)
					conditionString += "T2,";
				else
					conditionString += "F2,";
				
				if(a > 1)
					conditionString += "T3,";
				else
					conditionString += "F3,";
				
				if(c > 1)
					conditionString += "T4,";
				else
					conditionString += "F4,";					

				if(a > 1 || c > 1)
				{			
					c = c + 1;
					pathString=pathString+" 4";
					judgeString += "N";
				}
				else
				{
					pathString=pathString+" 5";
					judgeString += "/N";
				}
				jtf_c_2.setText(c + "");
				
				c = c + b;
				
				jtf_a_1.setText(a + "");
				jtf_b_1.setText(b + "");
				jtf_c_3.setText(c + "");

				
				
				jlb_path.setText(pathString);
				jlb_Condition.setText(conditionString);
				jlb_Judge.setText(judgeString);

			}
		});

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -