圖片服務器測試文檔

一.單元測試

1.1測試模塊

因爲要對數據進行增刪查改操作,我認爲這個模塊如果出現錯誤,後果很嚴重,對後續編碼會帶來很大問題,所以對該模塊用JUnit進行單元測試。

1.2測試框架

Java常用的測試框架是JUnit,分別對增刪查改方法進行代碼編寫,來測試它是否有BUG。

public class ImageDaoTest {

    @Test
    public void insert() {
        //圖片有屬性進行測試
        Image image=new Image();
        image.setImageName("03演示圖片.jpg");
        image.setSize(1416260) ;
        image.setUploadTime("20200604");
        image.setContentType(" image/jpeg") ;
        image.setPath("./image/d54c32d23621fb9ba448c71f1996c871");
        image.setMd5("d54c32d23621fb9ba448c71f1996c871");
        ImageDao imageDao=new ImageDao();
        imageDao.insert(image);
        //圖片爲空測試
        Image i2=new Image();
        imageDao.insert(i2);
    }

    @Test
    public void selectAll() {
        ImageDao imageDao=new ImageDao();
        List<Image> list=imageDao.selectAll();
        for(Image image:list){
            System.out.println(image.getImageName());
        }
    }

    @Test
    public void selectOne() {
        ImageDao imageDao=new ImageDao();
        //id存在
        Image image1=imageDao.selectOne(113);
        System.out.println(image1.getImageName());
        //id不存在(報錯--空指針異常)
        //Image image2=imageDao.selectOne(1);
        //System.out.println(image2.getImageName());
    }

    @Test
    public void delete() {
        ImageDao imageDao=new ImageDao();
        //id存在
        imageDao.delete(113);
        //刪除不存在的id(報錯)
        //imageDao.delete(1);
    }

    @Test
    public void selectByMd5() {
        ImageDao imageDao=new ImageDao();
        //md5存在
       Image image=imageDao.selectByMd5("d54c32d23621fb9ba448c71f1996c871");
        //Image image2=imageDao.selectByMd5("4c32d23621fb9ba448c71f1996c871");
        //md5不存在(報錯)
        System.out.println(image.getImageName()+image.getImageId());
       // System.out.println(image2.getImageName()+image2.getImageId());
    }
}

BUG:

  1. 插入空依然可以成功寫入到數據庫中,按道理是不應該的
  2. 根據id查找圖片,id存在查找成功,id不存在報錯(空指針異常)
  3. 刪除指定id圖片,刪除成功,id不存在報錯
  4. md5是用來判斷數據庫中是否有相同md5的數據,指定md5查找成功,md5不存在會報錯。

二.功能測試

2.1界面測試

在這裏插入圖片描述

2.2上傳功能

在這裏插入圖片描述

2.3刪除功能

在這裏插入圖片描述

2.4 異常情況

在這裏插入圖片描述

2.5 圖片展示

在這裏插入圖片描述

三.兼容測試

在這裏插入圖片描述

四.安全性測試

在這裏插入圖片描述

五.易用性測試

在這裏插入圖片描述

六.自動化測試

from selenium import webdriver
import unittest
import time
class imageTest(unittest.TestCase):
    def setUp(self):
        self.driver=webdriver.Chrome()
        self.driver.get("http://localhost:8081/image_server/index.html")
        self.driver.maximize_window()

    def tearDown(self):
       self.driver.quit()

    def test_upload(self):
       self.driver.find_element_by_name("upload").send_keys("C:\\Users\\11506\\Pictures\\2017-05\\03演示圖片.jpg")
       time.sleep(3)
       self.driver.find_element_by_xpath("//*[@id='blog-collapse']/form/div[2]").click()
       time.sleep(3)

    def test_delete(self):
        self.driver.find_element_by_xpath("//*[@id='container']/div[1]/button").click()
        alert=self.driver.switch_to.alert()
        alert.accept()
    if __name__=="__main__":
        unittest.main()

七.性能測試

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章