### Question:
Erc20Utils { public static TransactionReceipt sendErc20Tokens(String ercContract, IsoDep tag, String publicKey, String from, String to, BigInteger amount, BigInteger gasPrice, BigInteger gasLimit, Activity activity, String url) throws Exception { Web3j web3j = Web3jFactory.build(new HttpService(url)); TransactionManager transactionManager = new NfcTransactionManager(web3j, from, tag, publicKey, activity); ERC20Contract erc = ERC20Contract.load(ercContract, web3j, transactionManager, gasPrice, gasLimit); final RemoteCall<TransactionReceipt> transfer = erc.transfer(to, amount); return transfer.send(); }  static TransactionReceipt sendErc20Tokens(String ercContract, IsoDep tag, String publicKey, String from,
                                                     String to, BigInteger amount, BigInteger gasPrice, BigInteger gasLimit,
                                                     Activity activity, String url); static BigInteger getErc20Balance(String ercContract, String ethAddress, String url);  }### Answer:
@Test @Ignore public void testSendErc20Tokens() throws Exception { PowerMockito.mockStatic(NfcUtils.class); when(NfcUtils.generateSignature(any(), anyInt(), any(), any())).thenAnswer( (Answer) invocation -> { Object[] args = invocation.getArguments(); return TransactionSigner.signTransaction((byte[]) args[2]); }); final TransactionReceipt transactionReceipt = Erc20Utils.sendErc20Tokens(ERC_CONTRACT, isoDep, Numeric.toHexStringNoPrefixZeroPadded(TransactionSigner.credentials.getEcKeyPair().getPublicKey(), 128), TransactionSigner.credentials.getAddress(), "0x8720af26d1810ae8fca995002ad56175e4c97b23", new BigInteger("1"), GAS_PRICE, GAS_LIMIT, null, ROPSTEN_URI); System.out.println(transactionReceipt.getTransactionHash()); assertNotNull(transactionReceipt.getTransactionHash()); assertEquals("0x1", transactionReceipt.getStatus()); }