我正在使用Espresso进行自动化测试。
缺少可以编写Instrumentation测试类的文件夹
我尝试添加
On Error Resume Next
Dim ADSysInfo, objComputer, lobjDate, laccountExpiresDate, WSHShell
Set WSHShell = CreateObject("WScript.Shell")
Set ADSysInfo = CreateObject("ADSystemInfo")
Set objComputer = GetObject("LDAP://" & ADSysInfo.ComputerName)
msgbox objComputer
Set lobjDate = objComputer.get("lastLogon") ' <----- Working ----->
' Set lobjDate = objComputer.get("accountExpires") ' <----- Not Working ----->
msgbox err.number
if IsNull(lobjDate) then
msgbox "No Date"
else
laccountExpiresDate = Integer8Date(lobjDate, getLocaltimeZoneBias)
msgbox laccountExpiresDate
end if
Function Integer8Date(objDate, lngBias)
' Function to convert Integer8 (64-bit) value to a date, adjusted for
' local time zone bias.
Dim lngAdjust, lngDate, lngHigh, lngLow
lngAdjust = lngBias
lngHigh = objDate.HighPart
lngLow = objdate.LowPart
' Account for bug in IADslargeInteger property methods.
If lngLow < 0 Then
lngHigh = lngHigh + 1
End If
If (lngHigh = 0) And (lngLow = 0) Then
lngAdjust = 0
End If
lngDate = #1/1/1601# + (((lngHigh * (2 ^ 32)) + lngLow) / 600000000 - lngAdjust) / 1440
Integer8Date = CDate(lngDate)
End Function
' Obtain local time zone bias from machine registry.
Function getLocaltimeZoneBias
Dim lngBiasKey, lngBias
lngBiasKey = WSHShell.RegRead("HKLM\System\CurrentControlSet\Control\TimeZoneInformation\ActiveTimeBias")
If UCase(TypeName(lngBiasKey)) = "LONG" Then
lngBias = lngBiasKey
ElseIf UCase(TypeName(lngBiasKey)) = "VARIANT()" Then
lngBias = 0
For k = 0 To UBound(lngBiasKey)
lngBias = lngBias + (lngBiasKey(k) * 256^k)
Next
End If
getLocaltimeZoneBias = lngBias
End Function 'getLocaltimeZoneBias
在 build.gradle 内部,但无效。
尝试使用this问题中提供的其他解决方案生成的方法仍然无效
答案 0 :(得分:1)
最快的方法是自动生成文件夹并记录浓缩咖啡测试。在Android Studio的顶部菜单栏上,单击“运行”,然后单击->“记录Espresso测试”。
这将启动您的模拟器并打开记录器对话框。然后,只需在模拟器上执行一些操作,然后在记录器对话框中单击“确定”即可。 Android Studio将生成测试以及丢失的文件夹。基本上,您将具有一个模板测试设置,供您根据需要开始编辑。
答案 1 :(得分:0)
复制并粘贴现有的测试文件夹,在对我有用的文件系统中将其重命名为“ androidTest”。
因为我的项目最近被转移到了新的存储库,所以文件夹被删除了。
答案 2 :(得分:0)
像创建其他文件夹一样创建您的androidTest文件夹。将其放在app / src下。您可以根据需要在Android Studio外部创建该文件夹。
在您的build.gradle文件中放置正确的依赖项。像这样:
testImplementation 'junit:junit:4.12'
testImplementation 'androidx.arch.core:core-testing:2.0.1'
androidTestImplementation 'androidx.test:rules:1.1.1'
androidTestImplementation 'androidx.test:runner:1.1.2-alpha02'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0-alpha02'
androidTestImplementation 'androidx.test.ext:junit:1.1.0'
androidTestImplementation 'androidx.test.espresso:espresso-intents:3.1.1'
将testInstrumentationRunner设置放入build.gradle文件中:
android {
defaultConfig {
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
}
在您将要保存在app / src / androidTest / [此处的名称空间]下的测试类中,将类似于以下内容:
import android.content.Context;
import android.support.test.InstrumentationRegistry;
import android.support.test.runner.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.assertEquals;
@RunWith(AndroidJUnit4.class)
public class PrincipalTest {
@Test
public void testAppContext() {
Context context = InstrumentationRegistry.getTargetContext();
assertEquals("my.package.name", context.getPackageName());
}
}