举重比赛,需要根据性别和体重来决定是否有参赛资格,具体规则如下:
当性别为男且体重大于等于 54 公斤时,可参加男子组比赛,否则无资格参赛。
当性别为女且体重大于等于 46 公斤时,可参加女子组比赛,否则无资格参赛。
当性别既不是男也不是女时,系统显示性别异常。
package cn.lanqiao;
/**
* 本类主要功能描述:
* 1、性别既不是男也不是女,则显示性别异常
* 2、性别为男,体重大于等于54公斤,显示可参加男子组比赛,否则无资格参赛
* 3、性别为女,体重大于等于46公斤,显示可参加女子组比赛,否则无资格参赛
*/
public class Weightlifting {
/**
* 根据性别和体重确认是否可以参赛
* @param sex 性别
* @param weight 体重
* @return 是否可以参赛
*/
public String divide(String sex, int weight){
String result = null;
if("男".equals(sex)){
if(weight >= 54){
result = "可参加男子组比赛";
}else{
result = "无资格参赛";
}
}else if("女".equals(sex)){
if(weight >= 46){
result = "可参加女子组比赛";
}else{
result = "无资格参赛";
}
}else{
result = "性别异常";
}
return result;
}
}
package cn.lanqiao;
import static org.junit.Assert.assertEquals;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
/**
* 1. 请使用基本路径覆盖法对被测源代码 Weightlifting 类中的 divide 方法设计 5 条单元测试用例。
* 2. 请在下方 WeightliftingTest 类中填写单元测试代码内容。
* 3. 在测试中用到的断言 Assert 类务必使用 org.junit 包中的 Assert 。
*/
public class WeightliftingTest {
// 声明被测类
private Weightlifting weightlifting;
@Before
public void setUp(){
// 创建被测类对象
weightlifting = new Weightlifting();
}
@After
public void tearDown(){
// 释放被测类对象
weightlifting = null;
}
@Test
public void test01(){
// TODO 请填写单元测试代码
assertEquals(weightlifting.divide("男", 60), "可参加男子组比赛");
}
@Test
public void test02(){
// TODO 请填写单元测试代码
assertEquals(weightlifting.divide("男", 50), "无资格参赛");
}
@Test
public void test03(){
// TODO 请填写单元测试代码
assertEquals(weightlifting.divide("女", 50), "可参加女子组比赛");
}
@Test
public void test04(){
// TODO 请填写单元测试代码
assertEquals(weightlifting.divide("女", 40), "无资格参赛");
}
@Test
public void test05(){
// TODO 请填写单元测试代码
assertEquals(weightlifting.divide("测试", 40), "性别异常");
}
}