veloz - IOS del sistema viene con las notas de estudio de pruebas unitarias

fondo

desarrollo de procesos para los clientes de mensajería instantánea para iOS a menudo necesitan la lógica de negocio de prueba dentro del SDK, como cabecera del protocolo es correcta, es necesario para comunicarse con el servidor de depurarlo. Esta vez si se escribe una página, haga clic en el botón de llamadas a través, parecía más superfluo. Así que pienso en rápida cómo utilizar la unidad de pruebas, ficha por este medio.

MacOS: 10.15.3
Xcode: 11.3.1
Última actualización: 03/16/2020

paso

Crear un proyecto de prueba de unidad

Archivo-> Nuevo-> Objetivo ...
Seleccione la Unidad de Pruebas Bundle
Unidad de nombre de proyecto de prueba, el valor predeterminado puede ser directamente
predeterminado directa, acabado puede ser.

creado

Crear una ficheros de pruebas funcionales

En el proyecto de prueba de unidad recién creada, haga clic.
Archivo nuevo...
Seleccione la unidad de prueba Caso de Clase
Después de introducir el nombre + Pruebas de archivo de prueba, junto al siguiente paso
nombre de archivo de pruebas unitarias
creado

código de prueba de escritura

En primer lugar, la introducción del módulo a ensayar (nombre del proyecto):

@testable import CoffeeChat // @testable 可访问 internal 属性方法

método de prueba de escritura (similar a la entrada de la función principal):

// 格式为 test+名字,否则无法运行,如下
func testConnect(){
    let client = CIMClient()
    client.connect(ip: "10.0.106.117", port:8000)
    sleep(3)
}

El código completo es el siguiente:

//
//  CIMClientTests.swift
//  CoffchatTests
//
//  Created by xuyingchun on 2020/3/16.
//  Copyright © 2020 Xuyingchun Inc. All rights reserved.
//

import XCTest

@testable import Coffchat

class CIMClientTests: XCTestCase {
    func testConnect(){
        let client = CIMClient()
        client.connect(ip: "10.0.106.117", port:8000)
        
        sleep(3)
    }
}

ejecución de la prueba

Para probar la función de clic en el icono de línea de la posición número "Ejecutar".
Ejemplos
Por supuesto, también en las siguientes maneras:
comando de acceso directo + u
Los accesos directos

consejos
pruebas unitarias se pueden dividir en módulos, se puede dividir en función de pequeño, bastante feliz

Esto se utiliza en el sistema viene con la unidad de pruebas, hay otros programas en línea

resultados de las pruebas y la lista:
Lista de unidad de prueba

proyecto de prueba de la unidad de eliminación

  1. unidad de eliminación carpeta de prueba, tales como "CoffchatTests"
  2. Borrar destinos, de la siguiente manera (sólo si se elimina una carpeta, sin borrar el objetivo se quejan)
    1. Haga clic en el nombre del proyecto
    2. Haga clic en el "lado izquierdo para expandir"
    3. Haga clic en Eliminar en camino de ser eliminado
      Cómo eliminar un destino de prueba de unidad

observación

común Unidad Método de prueba

XCTAssert(expression, format...)当expression求值为TRUE时通过

Otras referencias

XCTFail(format…) 生成一个失败的测试;
XCTAssertNil(a1, format...)为空判断,a1为空时通过,反之不通过;
XCTAssertNotNil(a1, format…)不为空判断,a1不为空时通过,反之不通过;
XCTAssert(expression, format...)当expression求值为TRUE时通过;
XCTAssertTrue(expression, format...)当expression求值为TRUE时通过;
XCTAssertFalse(expression, format...)当expression求值为False时通过;
XCTAssertEqualObjects(a1, a2, format...)判断相等,[a1 isEqual:a2]值为TRUE时通过,其中一个不为空时,不通过;
XCTAssertNotEqualObjects(a1, a2, format...)判断不等,[a1 isEqual:a2]值为False时通过;
XCTAssertEqual(a1, a2, format...)判断相等(当a1和a2是 C语言标量、结构体或联合体时使用, 判断的是变量的地址,如果地址相同则返回TRUE,否则返回NO);
XCTAssertNotEqual(a1, a2, format...)判断不等(当a1和a2是 C语言标量、结构体或联合体时使用);
XCTAssertEqualWithAccuracy(a1, a2, accuracy, format...)判断相等,(double或float类型)提供一个误差范围,当在误差范围(+/-accuracy)以内相等时通过测试;
XCTAssertNotEqualWithAccuracy(a1, a2, accuracy, format...) 判断不等,(double或float类型)提供一个误差范围,当在误差范围以内不等时通过测试;
XCTAssertThrows(expression, format...)异常测试,当expression发生异常时通过;反之不通过;(很变态) XCTAssertThrowsSpecific(expression, specificException, format...) 异常测试,当expression发生specificException异常时通过;反之发生其他异常或不发生异常均不通过;
XCTAssertThrowsSpecificNamed(expression, specificException, exception_name, format...)异常测试,当expression发生具体异常、具体异常名称的异常时通过测试,反之不通过;
XCTAssertNoThrow(expression, format…)异常测试,当expression没有发生异常时通过测试;
XCTAssertNoThrowSpecific(expression, specificException, format...)异常测试,当expression没有发生具体异常、具体异常名称的异常时通过测试,反之不通过;
XCTAssertNoThrowSpecificNamed(expression, specificException, exception_name, format...)异常测试,当expression没有发生具体异常、具体异常名称的异常时通过测试,反之不通过

Referencia: https://www.jianshu.com/p/be32739d8aae

Se han publicado 19 artículos originales · ganado elogios 9 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/xmcy001122/article/details/104897575
Recomendado
Clasificación