---
# System prepended metadata

title: Userのテストシナリオ
tags: [テスト設計]

---

# Userのテストシナリオ

###### tags: `テスト設計`


## Wallet

```javascript=
describe("Wallet", () => {
    describe("Networks", () => {
        it("メインネットのSRUに繋ぐことができる", () => {});
        it("テストネットのSRUに繋ぐことができる", () => {});
        it("任意のエンドポイントに繋ぐことができる", () => {});
        it("ローカルのエンドポイントに繋ぐことができる", () => {});
        it("メインネットのLightning Networkに繋ぐことができる", () => {});
        it("テストネットのLightning Networkに繋ぐことができる", () => {});
        it("任意のLightning Networkに繋ぐことができる", () => {});
        it("ローカルのLightning Networkに繋ぐことができる", () => {});m
    });
    
    describe("Mnemonic", () => {
        it("新規でMnemonicを生成し、暗号化して保存できる", () => {});
        it("パスワードが正しければMnemonicを復号できる", () => {});
        it("パスワードが正しくなければMnemonicを復号できない", () => {});

        it("生成されたMnemonicをインポートできる", () => {});
    });
    
    describe("Tx", () => {
        it("ln払いのガスの見積もりができる", () => {});
        it("ERC20払いのガスの見積もりができる", () => {});
        it("任意のtxに署名できる", () => {});
        it("自分の出したtxの一覧を確認できる", () => {});
    });
    
    describe("Signature", () => {
        it("任意の文字列に署名できる", () => {});
    });
    
    describe("DApps", () => {
        it("何らかの方法でDAppsと接続できる", () => {});
        it("Webサイトはウォレットに対して接続要求ができる", () => {});
        it("接続要求をキャンセルすることができる", () => {});
        it("接続要求されると、アカウント情報をWebサイト側からアクセスできるようになる", () => {});
        it("接続要求済みだと、署名を依頼することができる", () => {});
        it("署名の依頼がキャンセルされるとエラーが返る", () => {});
        it("接続要求済みだと、Transactionへの署名を依頼することができる", () => {});
        it("Transactionへの署名の依頼をキャンセルされるとエラーが返る", () => {});
    });
    
    describe("Assets", () => {
        describe("ERC20", () => {
            it("自分の持ってる資産の残高がDecimalを解釈して確認できる", () => {});
            it("自分の持ってる資産の銘柄が確認できる", () => {});
            it("自分の持ってる資産のDecimalが確認できる", () => {});
            it("自分の持ってる資産のロゴが確認できる", () => {});

            it("100種類以上のERC20をuserStateに入れることができる", () => {});
            it("任意のERC20の数量を入力して任意のアドレスにtransferができる", () => {});
            it("任意のERC20を登録できる", () => {});
            it("", () => {});
            

        });
        describe("ERC721", () => {
            it("自分の持っているNFTの画像が見える", () => {});
            it("自分の持っているNFTのメタデータが見える", () => {});
            it("自分の持っているNFTの一覧がある", () => {});
            it("任意のERC721を任意のアドレスにtransferができる", () => {});
            it("任意のERC721を登録できる", () => {});
        });
        
        describe("ERC1155", () => {
            it("自分の持っているNFTの画像が見える", () => {});
            it("自分の持っているNFTのメタデータが見える", () => {});
            it("自分の持っているNFTの一覧がある", () => {});
            it("任意のERC1155を任意のアドレスにtransferができる", () => {});
            it("任意のERC1155を登録できる", () => {});
        });
        
        
    });

});
});
```

## ここに書かないこと
- sendTx
- exit