Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 安卓端自动化测试步骤增加拖拽选项,并把原本的拖拽名词(swipe)改成更符合它的滑动 #283

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion src/components/StepShow.vue
Original file line number Diff line number Diff line change
Expand Up @@ -332,7 +332,7 @@ const getNotes = (text, type) => {
<span v-if="step.stepType === 'swipe'">
<el-tag type="info" size="small">{{ step.elements[0]['eleName'] }}</el-tag>
<el-tag size="small" style="margin-left: 10px; margin-right: 10px">{{
$t('stepDetail.dragTo')
$t('stepDetail.swipeTo')
}}</el-tag>
<el-tag type="info" size="small">{{ step.elements[1]['eleName'] }}</el-tag>
</span>
Expand Down Expand Up @@ -542,6 +542,13 @@ const getNotes = (text, type) => {
{{ step.content }}
</span>
<span v-if="step.stepType === 'swipe2' || step.stepType === 'pocoSwipe'">
<el-tag type="info" size="small">{{ step.elements[0]['eleName'] }}</el-tag>
<el-tag size="small" style="margin-left: 10px; margin-right: 10px">{{
$t('stepDetail.swipeTo')
}}</el-tag>
<el-tag type="info" size="small">{{ step.elements[1]['eleName'] }}</el-tag>
</span>
<span v-if="step.stepType === 'drag2' || step.stepType === 'drag'">
<el-tag type="info" size="small">{{ step.elements[0]['eleName'] }}</el-tag>
<el-tag size="small" style="margin-left: 10px; margin-right: 10px">{{
$t('stepDetail.dragTo')
Expand Down
104 changes: 90 additions & 14 deletions src/components/StepUpdate.vue
Original file line number Diff line number Diff line change
Expand Up @@ -594,6 +594,10 @@ const androidOptions = ref([
value: 'swipe2',
label: $t('stepDetail.label.androidOptions.element.uiEle.swipe2'),
},
{
value: 'drag2',
label: $t('stepDetail.label.androidOptions.element.uiEle.drag2'),
},
{
value: 'scrollToEle',
label: $t(
Expand Down Expand Up @@ -668,6 +672,12 @@ const androidOptions = ref([
'stepDetail.label.androidOptions.element.coordinate.swipe'
),
},
{
value: 'drag',
label: $t(
'stepDetail.label.androidOptions.element.coordinate.drag'
),
},
],
},
{
Expand Down Expand Up @@ -1568,6 +1578,31 @@ onMounted(() => {
</div>

<div v-if="step.stepType === 'swipe'">
<element-select
:label="$t('stepDetail.fromControl')"
:place="
$t('stepDetail.msg.select') +
$t('stepDetail.label.androidOptions.element.coordinate.self')
"
:index="0"
:project-id="projectId"
type="point"
:step="step"
/>
<element-select
:label="$t('stepDetail.swipeTo')"
:place="
$t('stepDetail.msg.select') +
$t('stepDetail.label.androidOptions.element.coordinate.self')
"
:index="1"
:project-id="projectId"
type="point"
:step="step"
/>
</div>

<div v-if="step.stepType === 'drag'">
<element-select
:label="$t('stepDetail.fromControl')"
:place="
Expand Down Expand Up @@ -1826,7 +1861,9 @@ onMounted(() => {
style="margin-bottom: 10px"
close-text="Get!"
type="info"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t('stepDetail.variableName')}&#125;&#125;`"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t(
'stepDetail.variableName'
)}&#125;&#125;`"
/>
<el-form-item
prop="text"
Expand All @@ -1850,7 +1887,9 @@ onMounted(() => {
style="margin-bottom: 10px"
close-text="Get!"
type="info"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t('stepDetail.variableName')}&#125;&#125;`"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t(
'stepDetail.variableName'
)}&#125;&#125;`"
/>
<el-form-item
prop="text"
Expand All @@ -1874,7 +1913,9 @@ onMounted(() => {
style="margin-bottom: 10px"
close-text="Get!"
type="info"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t('stepDetail.variableName')}&#125;&#125;`"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t(
'stepDetail.variableName'
)}&#125;&#125;`"
/>
<el-form-item
:label="$t('stepDetail.installation')"
Expand Down Expand Up @@ -1938,7 +1979,9 @@ onMounted(() => {
style="margin-bottom: 10px"
close-text="Get!"
type="info"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t('stepDetail.variableName')}&#125;&#125;`"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t(
'stepDetail.variableName'
)}&#125;&#125;`"
/>
<el-form-item
prop="text"
Expand Down Expand Up @@ -1973,7 +2016,9 @@ onMounted(() => {
style="margin-bottom: 10px"
close-text="Get!"
type="info"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t('stepDetail.variableName')}&#125;&#125;`"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t(
'stepDetail.variableName'
)}&#125;&#125;`"
/>
<el-form-item
prop="text"
Expand Down Expand Up @@ -2306,7 +2351,11 @@ onMounted(() => {
{{ $t('stepDetail.msgTips.focus') }}
</div>
<div>
{{`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t('stepDetail.variableName')}&#125;&#125;`}}
{{
`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t(
'stepDetail.variableName'
)}&#125;&#125;`
}}
</div>
</template>
</el-alert>
Expand Down Expand Up @@ -2350,6 +2399,29 @@ onMounted(() => {
</div>

<div v-if="step.stepType === 'swipe2'">
<element-select
:label="$t('stepDetail.fromControl')"
:place="
$t('stepDetail.msg.select') + $t('stepDetail.control.element')
"
:index="0"
:project-id="projectId"
type="normal"
:step="step"
/>
<element-select
:label="$t('stepDetail.swipeTo')"
:place="
$t('stepDetail.msg.select') + $t('stepDetail.control.element')
"
:index="1"
:project-id="projectId"
type="normal"
:step="step"
/>
</div>

<div v-if="step.stepType === 'drag2'">
<element-select
:label="$t('stepDetail.fromControl')"
:place="
Expand Down Expand Up @@ -2691,7 +2763,9 @@ onMounted(() => {
style="margin-bottom: 10px"
close-text="Get!"
type="info"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t('stepDetail.variableName')}&#125;&#125;`"
:title="`${$t('stepDetail.msgTips.variable')}&#123;&#123;${$t(
'stepDetail.variableName'
)}&#125;&#125;`"
/>
<global-params-select
:label="$t('stepDetail.verify.expectedValue')"
Expand Down Expand Up @@ -3022,7 +3096,9 @@ onMounted(() => {
style="margin-bottom: 10px"
close-text="Get!"
type="info"
:title="`${$t('stepDetail.use')} &#123;&#123;${$t('stepDetail.variableName')}&#125;&#125; ${$t('stepDetail.msgTips.verify')}`"
:title="`${$t('stepDetail.use')} &#123;&#123;${$t(
'stepDetail.variableName'
)}&#125;&#125; ${$t('stepDetail.msgTips.verify')}`"
/>
<el-form-item :label="$t('stepDetail.verify.actualValue')">
<el-input
Expand Down Expand Up @@ -3320,9 +3396,9 @@ onMounted(() => {
</el-table-column>
</el-table>
<div style="text-align: center; margin-top: 10px">
<el-button size="mini" @click="add()">{{
$t('stepDetail.new')
}}</el-button>
<el-button size="mini" @click="add()"
>{{ $t('stepDetail.new') }}
</el-button>
</div>
</el-tab-pane>
</el-tabs>
Expand Down Expand Up @@ -3509,8 +3585,8 @@ onMounted(() => {
</el-form>

<div style="text-align: center; margin-top: 20px">
<el-button size="small" type="primary" @click="summitStep">{{
$t('stepDetail.submit')
}}</el-button>
<el-button size="small" type="primary" @click="summitStep"
>{{ $t('stepDetail.submit') }}
</el-button>
</div>
</template>
7 changes: 5 additions & 2 deletions src/locales/lang/en_US.js
Original file line number Diff line number Diff line change
Expand Up @@ -1156,6 +1156,7 @@ const stepDetail = {
delete: 'Delete ',
detect: 'Detect ',
dragTo: 'Drag To ',
swipeTo: 'Swipe To',
display: 'Display ',
downwards: 'Downwards ',
exception: {
Expand Down Expand Up @@ -1263,8 +1264,9 @@ const stepDetail = {
click: 'Click the Control Element',
sendKeys: 'Enter Text',
sendKeysByActions: 'Enter Text(Actions)',
swipe2: 'Drag Control Element',
scrollToEle: 'Drag to Control Element',
swipe2: 'Swipe Control Element',
drag2: 'Drag Control Element',
scrollToEle: 'Scroll to Control Element',
longPress: 'Long Press Control Element',
clear: 'Clear InputBox',
obtainElementAttr: 'Get Element Attribute',
Expand All @@ -1279,6 +1281,7 @@ const stepDetail = {
tap: 'Tap Coordinate',
longPressPoint: 'Long Press Point',
swipe: 'Swipe',
drag: 'Drag And Drop',
},
webView: {
self: 'WebView Control',
Expand Down
27 changes: 16 additions & 11 deletions src/locales/lang/ja_JP.js
Original file line number Diff line number Diff line change
Expand Up @@ -349,7 +349,6 @@ const common = {
copy: '复制',
inuse: '使用済み',
inidle: 'アイドル状態',

};
// 路由
const routes = {
Expand Down Expand Up @@ -467,7 +466,7 @@ const jobsTS = {
},
addCron: '添加定时任务',
whatCron: '什么是Cron表达式?',
cronNoNext: "N/A",
cronNoNext: 'N/A',
cronInfo: {
one: '* 第一位,表示秒,取值 0-59',
two: '* 第二位,表示分,取值 0-59',
Expand Down Expand Up @@ -1064,16 +1063,19 @@ const stepDetail = {
swipeEvent: '随机两个坐标滑动',
systemEvent: 'Home、返回键等等',
navEvent: '安卓:随机开关WIFI;iOS:后台运行当前应用',
isOpenPackageListener: '检测当前应用是否为被测应用,为否时将重新拉起被测应用',
isOpenPackageListener:
'检测当前应用是否为被测应用,为否时将重新拉起被测应用',
isOpenH5Listener: '检测是否长时间停留在H5页面 (Android Only)',
isOpenActivityListener: '检测当前Activity是否在黑名单内 (Android Only)',
isOpenNetworkListener: '检测设备是否处于飞行模式和WIFI网络 (Android Only)',
isOpenNetworkListener:
'检测设备是否处于飞行模式和WIFI网络 (Android Only)',
},
},
detailConfigure: '详细配置',
delete: '删除',
detect: '检测',
dragTo: '滑动拖拽至',
dragTo: '拖拽至',
swipeTo: '滑动至',
display: '显示',
downwards: '向下',
exception: {
Expand Down Expand Up @@ -1180,7 +1182,8 @@ const stepDetail = {
click: '点击控件元素',
sendKeys: '输入文本',
sendKeysByActions: '输入文本(Actions)',
swipe2: '拖拽控件元素',
swipe2: '滑动控件元素',
drag2: '拖拽控件元素',
scrollToEle: '滚动到控件元素',
longPress: '长按控件元素',
clear: '清空输入框',
Expand All @@ -1195,7 +1198,8 @@ const stepDetail = {
self: '坐标控件',
tap: '点击坐标',
longPressPoint: '长按坐标',
swipe: '滑动拖拽',
swipe: '直线滑动',
drag: '拖拽滑动',
},
webView: {
self: 'WebView控件',
Expand Down Expand Up @@ -1265,7 +1269,7 @@ const stepDetail = {
self: '运行设置',
stepHold: '步骤间隔设置',
switchTouchMode: '触控模式设置',
},
},
},
iOSOptions: {
system: {
Expand Down Expand Up @@ -1436,7 +1440,7 @@ const stepDetail = {
'TIPS: 传递Android应用的App包名,该步骤可实现自动授权目标App所需要的所有权限',
focus: 'TIPS: 在文本框需要先获取焦点,才能进行输入时,使用此方式。',
sysKey:
'TIPS: 本功能需要先唤醒系统键盘。需要临时变量或全局变量时,可以添加',
'TIPS: 本功能需要先唤醒系统键盘。需要临时变量或全局变量时,可以添加',
table: 'TIPS: 长列表的场景下,可通过该方法连续滚动,尝试让目标元素可见',
text: 'TIPS: 可以将获取的文本放入临时变量中',
controlAttribute: 'TIPS: 可以将获取的控件属性放入临时变量中',
Expand Down Expand Up @@ -1470,7 +1474,8 @@ const stepDetail = {
port: '端口',
randomEventsTest: '随机事件测试',
refreshPage: '刷新页面',
reminderDisplay: '三个指令前端显示上保留,用于兼容老版本升级上来之后,依然能正常的显示和运行',
reminderDisplay:
'三个指令前端显示上保留,用于兼容老版本升级上来之后,依然能正常的显示和运行',
reminderVersion: '大于2.5.0版本,增强的文本断言能力',
retries: '重试次数',
retriesInterval: '重试间隔',
Expand Down Expand Up @@ -1498,7 +1503,7 @@ const stepDetail = {
textToClipboard: '设置文本至剪切板',
stepsInterval: '步骤间隔设置',
touchMode: '触控模式设置',
},
},
swipe: '滑动',
switch: {
handler: '切换句柄',
Expand Down
9 changes: 6 additions & 3 deletions src/locales/lang/zh_CN.js
Original file line number Diff line number Diff line change
Expand Up @@ -1133,7 +1133,8 @@ const stepDetail = {
detailConfigure: '详细配置',
delete: '删除',
detect: '检测',
dragTo: '滑动拖拽至',
dragTo: '拖拽至',
swipeTo: '滑动至',
display: '显示',
downwards: '向下',
exception: {
Expand Down Expand Up @@ -1240,7 +1241,8 @@ const stepDetail = {
click: '点击控件元素',
sendKeys: '输入文本',
sendKeysByActions: '输入文本(Actions)',
swipe2: '拖拽控件元素',
swipe2: '滑动控件元素',
drag2: '拖拽控件元素',
scrollToEle: '滚动到控件元素',
longPress: '长按控件元素',
clear: '清空输入框',
Expand All @@ -1255,7 +1257,8 @@ const stepDetail = {
self: '坐标控件',
tap: '点击坐标',
longPressPoint: '长按坐标',
swipe: '滑动拖拽',
swipe: '直线滑动',
drag: '拖拽滑动',
},
webView: {
self: 'WebView控件',
Expand Down
Loading