я просто делаю модульное тестирование для моего класс с именем картыUnit тестирование экземпляр класса становится нулевой
public class Card{
private KeyStore kestore;
private Cipher cipher;
public Card(){
}
public void generateRandom(){
keyStore = KeyStore.getInstance("AndroidKeyStore");
keyGenerator = KeyGenerator.getInstance(KeyProperties.KEY_ALGORITHM_AES, "AndroidKeyStore");
keyStore.load(null);
keyGenerator.init(new
KeyGenParameterSpec.Builder(KEY_NAME,
KeyProperties.PURPOSE_ENCRYPT |
KeyProperties.PURPOSE_DECRYPT)
.setBlockModes(KeyProperties.BLOCK_MODE_CBC)
.setUserAuthenticationRequired(true)
.setEncryptionPaddings(
KeyProperties.ENCRYPTION_PADDING_PKCS7)
.build());
keyGenerator.generateKey();
}
public void init(){
cipher = Cipher.getInstance(
KeyProperties.KEY_ALGORITHM_AES + "/"
+ KeyProperties.BLOCK_MODE_CBC + "/"
+ KeyProperties.ENCRYPTION_PADDING_PKCS7);
keyStore.load(null);
SecretKey key = (SecretKey) keyStore.getKey(KEY_NAME,
null);
cipher.init(Cipher.ENCRYPT_MODE, key);
}
}
и ниже мое кодирование модульного тестирования.
public class cardTest extends AndroidTestCase{
Card card;
@Override
protected void setUp() throws Exception {
super.setUp();
card = new Card();
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
}
public class testgenerateRandom(){
card.generateRandom();
}
public class testinit(){
card.init();
}
}
поэтому в приведенном выше модульного тестирования,
testinit() будет вызывать инициализации класса карты. там keystore становится null. i уже инициализировал хранилище ключей в generateRandom(), которое является первым тестовым случаем.
всякий раз, когда первый тестовый пример (testgenerateRandom()) выполнен, экземпляр карты становится нулевым. так что хранилище ключей также становится нулевым
Почему экземпляр карты становится нулевым? Может ли кто-нибудь помочь мне в этом?
Пожалуйста, напишите свой реальный код или, по крайней мере, что-то, что на самом деле компилируется. – m0skit0
Обновлено это вы можете увидеть ... @ m0skit0 – Vji
@downvoter Могу ли я получить объяснение для голосования? – Vji