功能测试——医疗管理系统

Posted Starzkg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了功能测试——医疗管理系统相关的知识,希望对你有一定的参考价值。

源代码:https://gitee.com/shentuzhigang/mini-project/tree/master/test-graduate

测试需求

  1. 浏览器(请用 Google 或 者 Firefox ,其他浏览器会产生样式不适配) 打 开 :http://114.215.176.95:60511/Graduate/login.jsp,输入管理员账号 adda,密码 123,选择管理员选项;
    在这里插入图片描述

  2. 选择左侧菜单列表 “添加科室” 菜单项,添加相应的科室信息,包括科室编号、科室名字、和科室描述内容。注意科室编号不能与已有的重复。
    在这里插入图片描述
    在这里插入图片描述

  3. 选择左侧菜单列表->科室信息,选择科室编号搜索方式,并输入 131 编号,点击搜索
    在这里插入图片描述

  4. 同样在同一界面,选择该科室信息的修改按钮,对科室描述内容进行修改,内容自定,
    并点击提交。
    在这里插入图片描述

  5. 选择左侧医生管理->添加医生选项,并填写表单并提交,红色为必填。其中医生照片不
    需要填写,所属科室需选择耳鼻喉科,即对应编号为 131 的科室,如下图所示:
    在这里插入图片描述

  6. 医生管理,选择医生编号并输入关键字点击按钮进行搜索,搜索编号不作要求,但需要
    查有此人,示例编号:1235
    在这里插入图片描述

  7. 点击右侧修改按钮,修改该医生信息,只需将该医生描述改为副主任医生,并点击提交。
    在这里插入图片描述

  8. 点击退出登录按钮,测试结束

测试步骤

  1. Selenium 脚本录制
  2. 导出Junit测试
  3. 完善脚本
package io.shentuzhigang.test.graduate;// Generated by Selenium IDE
import org.junit.Test;
import org.junit.Before;
import org.junit.After;
import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.core.IsNot.not;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.Dimension;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.openqa.selenium.javascriptExecutor;
import org.openqa.selenium.Alert;
import org.openqa.selenium.Keys;

import java.io.File;
import java.util.*;
import java.net.MalformedURLException;
import java.net.URL;
public class GraduateTest {
  private WebDriver driver;
  private Map<String, Object> vars;
  JavascriptExecutor js;
  @Before
  public void setUp() {
    ChromeOptions options = new ChromeOptions();
    options.setBinary(new File("D:/ext/Google/Chrome/Application/chrome.exe"));
    driver = new ChromeDriver(options);
    js = (JavascriptExecutor) driver;
    vars = new HashMap<String, Object>();
  }
  @After
  public void tearDown() {
    driver.quit();
  }
  @Test
  public void test1() {
    driver.get("http://114.215.176.95:60511/Graduate/");
    driver.findElement(By.name("name")).sendKeys("adda");
    driver.findElement(By.name("pwd")).sendKeys("123");
    driver.findElement(By.cssSelector("label:nth-child(2)")).click();
    driver.findElement(By.cssSelector(".button")).click();
    driver.findElement(By.linkText("添加科室")).click();
    driver.switchTo().frame(0);
    driver.findElement(By.name("cNumber")).sendKeys("A01");
    driver.findElement(By.name("dName")).sendKeys("办公室");
    driver.findElement(By.name("dDec")).sendKeys("办公室");
    driver.switchTo().defaultContent();
    driver.findElement(By.linkText("科室信息")).click();
    driver.switchTo().frame(0);
    driver.findElement(By.id("keywords")).sendKeys("131");
    driver.findElement(By.linkText("搜索")).click();
    driver.findElement(By.linkText("修改")).click();
    driver.findElement(By.cssSelector(".button")).click();
    driver.switchTo().defaultContent();
    driver.findElement(By.cssSelector("h2:nth-child(4)")).click();
    // 等待css渲染
    WebDriverWait wait = new WebDriverWait(driver,1);
    wait.until(ExpectedConditions.presenceOfElementLocated(By.linkText("添加医生")));
    driver.findElement(By.linkText("添加医生")).click();
    driver.switchTo().frame(0);
    driver.findElement(By.name("dNumber")).sendKeys("0001");
    driver.findElement(By.name("name")).sendKeys("吴有海");
    driver.findElement(By.name("dPwd")).sendKeys("123456");
    {
      WebElement dropdown = driver.findElement(By.name("cNumber"));
      dropdown.findElement(By.xpath("//option[. = '内分泌科']")).click();
    }
    driver.findElement(By.name("dInfo")).sendKeys("内分泌专家");
    driver.findElement(By.name("dResume")).sendKeys("主治医师");
    driver.findElement(By.name("dTel")).sendKeys("15300000000");
    driver.findElement(By.name("dEmail")).sendKeys("1600000000@qq.com");
    driver.findElement(By.cssSelector(".button")).click();
    driver.switchTo().defaultContent();
    driver.findElement(By.linkText("医生管理")).click();
    driver.switchTo().frame(0);
    {
      WebElement dropdown = driver.findElement(By.id("s_istop"));
      dropdown.findElement(By.xpath("//option[. = '医生编号']")).click();
    }
    driver.findElement(By.id("keywords")).sendKeys("1235");
    driver.findElement(By.linkText("搜索")).click();
    driver.findElement(By.linkText("修改")).click();
    driver.findElement(By.name("dResume")).sendKeys("副主任医生");
    driver.findElement(By.cssSelector(".button")).click();
    driver.switchTo().defaultContent();
    driver.findElement(By.linkText("退出登录")).click();
  }
}

  1. 移除Junit
package io.shentuzhigang.test.graduate.Example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;

import java.io.File;

/**
 * @author ShenTuZhiGang
 * @version 1.0.0
 * @email 1600337300@qq.com
 * @date 2021-06-13 19:37
 */
public class Example {


package io.shentuzhigang.test.graduate.Example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;

import java.io.File;

/**
 * @author ShenTuZhiGang
 * @version 1.0.0
 * @email 1600337300@qq.com
 * @date 2021-06-13 19:37
 */
public class Example {


    // Mooctest Selenium Example
    public static void test(WebDriver driver) {
        driver.get("http://114.215.176.95:60511/Graduate/");
        driver.findElement(By.name("name")).sendKeys("adda");
        driver.findElement(By.name("pwd")).sendKeys("123");
        driver.findElement(By.cssSelector("label:nth-child(2)")).click();
        driver.findElement(By.cssSelector(".button")).click();
        driver.findElement(By.linkText("添加科室")).click();
        driver.switchTo().frame(0);
        driver.findElement(By.name("cNumber")).sendKeys(String.valueOf(System.currentTimeMillis()));
        driver.findElement(By.name("dName")).sendKeys("办公室");
        driver.findElement(By.name("dDec")).sendKeys("办公室");
        driver.switchTo().defaultContent();
        driver.findElement(By.linkText("科室信息")).click();
        driver.switchTo().frame(0);
        driver.findElement(By.id("keywords")).sendKeys("131");
        driver.findElement(By.linkText("搜索")).click();
        driver.findElement(By.linkText("修改")).click();
        driver.findElement(By.cssSelector(".button")).click();
        driver.switchTo().defaultContent();
        driver.findElement(By.cssSelector("h2:nth-child(4)")).click();
        // 等待css渲染
        WebDriverWait wait = new WebDriverWait(driver, 1);
        wait.until(ExpectedConditions.presenceOfElementLocated(By.linkText("添加医生")));
        driver.findElement(By.linkText("添加医生")).click();
        driver.switchTo().frame(0);
        driver.findElement(By.name("dNumber")).sendKeys(String.valueOf(System.currentTimeMillis()));
        driver.findElement(By.name("name")).sendKeys("吴有海");
        driver.findElement以上是关于功能测试——医疗管理系统的主要内容,如果未能解决你的问题,请参考以下文章

在便携式医疗设备应用中铁电存储器FRAM的关键优势

浅谈数商云供应链协同系统物流管理功能在医疗器械行业的作用

谱麦科技丨医疗机器人性能测试系统

云医美SAAS系统功能介绍

六安市医疗保障局率先通过全省网上备案接口测试

浅谈数商云S2B2C商城系统业务一体化管理功能在医疗器械行业的应用