日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
如何使用Cypress測試React原生應(yīng)用

Cypress支持幾乎所有的現(xiàn)代架構(gòu)開發(fā)框架,比如Angular、React Native、Vu,以及MVC框架等等。

十多年的海陵網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。成都全網(wǎng)營銷的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整海陵建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)從事“海陵網(wǎng)站設(shè)計”,“海陵網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。

本文將討論如何使用Cypress測試React Native應(yīng)用程序。

什么是React Native應(yīng)用程序?

React Native是一個基于JavaScript的開源框架,支持使用相同代碼庫在Android、iOS和Web應(yīng)用等多個平臺上構(gòu)建不同類型的應(yīng)用程序。

React Native允許人們訪問本地視圖、API和組件。因此,開發(fā)將更快,更高效。

構(gòu)建React應(yīng)用程序

Expo框架幫助構(gòu)建 React Native應(yīng)用程序。它支持基于相同代碼庫構(gòu)建的Android、iOS和Web應(yīng)用程序。Expo在Github中列出了很多有用的例子。

使用Expo,你可以構(gòu)建一個簡單的React原生應(yīng)用:

1. 使用npm安裝expo: npm install expo

2. 使用命令創(chuàng)建原生應(yīng)用: npx create-react-native-app –template

3. 使用參考:

  • 安裝 expo cli運行你的應(yīng)用程序: npm i -g expo-cli
  • 進入app目錄,并輸入命令: npm run web
  • 在瀏覽器窗口中啟動應(yīng)用程序,訪問地址: http://localhost:19006/
  • 如果你使用了一個空白的 React 項目模板,它應(yīng)該如下圖所示,是一個簡單的頁面。

注意:端口可能會發(fā)生變化,運行命令后檢查控制臺的日志。

下面,我們使用一個空白的項目模板創(chuàng)建一個React應(yīng)用程序,包含最基本的代碼。 App.js 是主要的源代碼,如下所示:

import { View, Text } from "react-native";
export default function App() {
  return (
          style={{
        flex: 1,
        justifyContent: "center",
        alignItems: "center",
      }}
    >
      Universal React with Expo
    
  );
}

這樣做是為了在設(shè)備上設(shè)置 React 應(yīng)用程序。

如何用Cypress執(zhí)行React應(yīng)用程序測試

Cypress教程提供了關(guān)于設(shè)置Cypress的詳細指南。

我們至少要做到以下幾點:

1. 安裝Cypress: npm install cypress

2. 打開Cypress 項目: npx cypress open

此時Cypress創(chuàng)建了目錄的所有基本結(jié)構(gòu)。

參考例子:

Expo my-react-app 訪問地址是 http://localhost:19006/ ,所以我們需要訪問這個地址來測試我們的應(yīng)用程序。

我們之前創(chuàng)建的expo應(yīng)用程序只有一組文本: “Universal React with Expo”. 我們使用一個簡單的Cypress腳本來驗證。

在你的項目目錄中,創(chuàng)建 firsttest.js文件,并添加Cypress腳本來驗證:

describe('My First Test', () => {
    it('Verify Text', () => {
        cy.visit('http://localhost:19006/');
        cy.get("div[id='root']").should('have.text', 'Universal React with Expo');
    });
})

在上面的代碼中,我們正在訪問到我們的本地網(wǎng)站,并驗證文本是否存在。

使用React Native和Cypress驗證API調(diào)用

大多數(shù)React Native應(yīng)用都在內(nèi)部調(diào)用API接口,所以我們也可以用Cypress來驗證。

假設(shè)我們有一個React應(yīng)用,它有一個API調(diào)用。

import React, { useEffect, useState } from 'react';
import { ActivityIndicator, FlatList, Text, View } from 'react-native';
export default function App() {
  const [isLoading, setLoading] = useState(true);
  const [data, setData] = useState([]);
  useEffect(() => {
    fetch('https://reqres.in/api/users?page=1')
      .then((response) => response.json())
      .then((json) => setData(json.data))
      .catch((error) => console.error(error))
      .finally(() => setLoading(false));
  }, []);

  return (
    
      {isLoading ? : (
                  accessibilityLabel="users"
          data={data}
          renderItem={({ item }) => (
            {item.id}, {item.first_name}, {item.email}
          )}
        />
      )}
    

  );
};

上面的代碼調(diào)用API https://reqres.in/api/users?page=1 返回一組JSON值。我們應(yīng)該能夠斷言body和status等的內(nèi)容。

在React Native應(yīng)用中驗證API調(diào)用的Cypress腳本

describe('My First Test', () => {
    it('Verify API', () => {
        cy.intercept('*/users?*').as('users');
        cy.visit('http://localhost:19006/');
        cy.wait('@users').then(({response}) => {
            expect(response.statusCode).to.eq(200)
            expect(response.body.data.length).to.eq(6)
            expect(response.body.data[0].email).to.eq('george.bluth@reqres.in')
          })
   });
  })

在上面的代碼中,我們使用Cypress Intercept特性,等待API加載。然后我們從API中獲取響應(yīng),并在測試中驗證它:

這樣我們就可以在Cypress中測試React原生應(yīng)用。此外,我們還可以設(shè)置Viewport并將其更改為不同的設(shè)備分辨率,以便測試移動Web應(yīng)用程序。

原文標(biāo)題:??Test React Native Apps With Cypress??,作者:Ganesh Hegde


當(dāng)前文章:如何使用Cypress測試React原生應(yīng)用
鏈接URL:http://m.5511xx.com/article/dpoodej.html