
發(fā)布
注冊(cè)
/
登錄GUI的案例
GUI自動(dòng)化測(cè)試助力優(yōu)質(zhì)軟件開發(fā)
本文翻譯自:Develop better software with the help of GUI test automation
原文作者:Qt公司總監(jiān) Harri Porten
校審:Tengxiao Yu
在應(yīng)用程序啟動(dòng)時(shí),用戶首先看到的是圖形用戶界面,通常稱為(GUI)。它是用戶從視覺上與應(yīng)用程序交互的一層介質(zhì),是應(yīng)用程序中對(duì)用戶可見的部分。例如,當(dāng)客戶啟動(dòng)金融應(yīng)用程序來查看銀行余額時(shí),他們會(huì)看到圖標(biāo)和按鈕。這些都是GUI的一部分。
什么是GUI測(cè)試?
GUI測(cè)試的目的是確認(rèn)受試應(yīng)用程序的GUI能夠按預(yù)期運(yùn)行。這包括跨平臺(tái)和跨設(shè)備測(cè)試,以確認(rèn)它按預(yù)期運(yùn)行并符合規(guī)范。鏈接、彈出式菜單、下拉菜單和按鈕只是受試的GUI元素中的一小部分。
應(yīng)用程序的GUI必須通過嚴(yán)格的測(cè)試才能向公眾發(fā)布。由于需要多次測(cè)試,這個(gè)過程可能非常耗時(shí)且繁重。為了節(jié)省時(shí)間并確保準(zhǔn)確性,QA團(tuán)隊(duì)和開發(fā)者現(xiàn)在可以采用GUI自動(dòng)化測(cè)試解決方案,使用軟件來執(zhí)行測(cè)試,過程中無需人工干預(yù)。
什么是GUI自動(dòng)化測(cè)試?
GUI自動(dòng)化測(cè)試包括使用工具、腳本和軟件來生成自動(dòng)化測(cè)試用例,以加速并簡(jiǎn)化手動(dòng)、重復(fù)且耗時(shí)的GUI測(cè)試。
為什么GUI測(cè)試很重要
GUI自動(dòng)化測(cè)試工具可以幫助捕捉測(cè)試人員可能疏漏的細(xì)微的GUI缺陷。GUI自動(dòng)化測(cè)試能夠檢測(cè)到的一些典型缺陷包括:
- 拼寫和語法錯(cuò)誤
- 表單中的輸入框沒有對(duì)齊
- 在調(diào)整瀏覽器大小或更改頁面比例時(shí)部分元素未能正確顯示
- 改變語言時(shí)文本大小的調(diào)整
- 字體不匹配
- 已勾選項(xiàng)和未勾選項(xiàng)之間缺乏區(qū)分
對(duì)于測(cè)試團(tuán)隊(duì)來說,理解這些問題的最好方法是站在實(shí)際用戶的角度考慮問題。
展開 精通GUI圖形界面編程01
MATLAB_GUI.part01.rar
MATLAB_GUI.part02.rar
MATLAB_GUI.part03.rar
MATLAB_GUI.part04.rar
MATLAB_GUI.part05.rar
MATLAB_GUI.part06.rar
MATLAB_GUI.part07.rar
MATLAB_GUI.part08.rar
MATLAB_GUI.part09.rar
MATLAB_GUI.part10.rar
MATLAB_GUI.part11.rar
MATLAB_GUI.part12.rar
展開 CODE?V?:GUI圖形界面好還是命令模式好
GUI對(duì)此注釋就無能為力了。
o 當(dāng)你在GUI運(yùn)行計(jì)算選項(xiàng)并保存輸出的文本時(shí),使用 Save Window or Save Window As,GUI產(chǎn)生的命令會(huì)顯示在文件上面,同時(shí)還有計(jì)算選項(xiàng)本身的名字。例如MTF的文本輸出可能包含了一個(gè) MFR 的命令(最大頻率)和一個(gè) IFR 命令(頻率增量),如果你在GUI里面指定了這些參數(shù),文本輸出里面最開始不會(huì)有 “MTF”。 但是如果你從命令窗口到文本編輯器,手動(dòng)復(fù)制/粘貼 CODE V 文本輸出,你可以把時(shí)間和日期后面的命令輸入列表也拷貝過去。當(dāng)然這是命令輸入,不是GUI輸入,但是總比沒有好!
一個(gè) GUI 用戶也可以保存GUI輸入和設(shè)置,以供日后使用,方法是點(diǎn)擊任何計(jì)算選項(xiàng)輸入對(duì)話框左下角的按鈕 Save/Load Settings ,下面是MTF 的例子。 (在10.6版本以前,這個(gè)標(biāo)簽是 “Option Set” ― 現(xiàn)在標(biāo)簽名字改了,功能不變) ,這相當(dāng)于序列文件,但是,CODE V 產(chǎn)生的 Save/Load Settings 文件是二進(jìn)制文件,只能被 CODE V 讀。如果你希望保存為文本格式,你可以點(diǎn)擊按鈕 Preview Current (以前是 Preview ) 來看GUI生成的命令輸入。這個(gè)命令輸入文本就顯示在 Preview窗口,然后你可以拷貝粘貼到你的編輯器。你也可以使用Preview 而并不真正保存這些設(shè)置 ― 點(diǎn)擊 Close 按鈕而不是 Save As…按鈕。
概括一下,所有保存GUI輸入的方法(點(diǎn)擊按鈕、勾選、輸入數(shù)字)都產(chǎn)生二進(jìn)制文件,只能被CODE V讀。對(duì)于存檔來說,謹(jǐn)慎的辦法是保存相應(yīng)的命令,GUI可以自動(dòng)為你產(chǎn)生文本格式的命令。
7. 鏡頭數(shù)據(jù)列表展現(xiàn)和編輯.這是GUI最基本的強(qiáng)項(xiàng),設(shè)置優(yōu)化控制變量、創(chuàng)建拾取關(guān)系、設(shè)置變焦參數(shù)等,也是GUI方便。
展開 利用PyQt進(jìn)行程序GUI設(shè)計(jì)
利用PyQt進(jìn)行程序GUI設(shè)計(jì)
Qt是一個(gè)跨平臺(tái)C++圖形用戶界面應(yīng)用程序開發(fā)框架,可以用來開發(fā)GUI程序,PyQt是針對(duì)Python語言進(jìn)行GUI程序設(shè)計(jì)的平臺(tái)。
通過PyQt設(shè)計(jì)GUI程序,可以直接打開PyQt的Design,這次以生成一耳光Main Window示例。
圖1
點(diǎn)擊創(chuàng)建生成一個(gè)MainWindow。在這里還有一種用的比較多的方式是通過Eric來打開PyQt的Design界面,通過這種方式比較方便編譯。如圖2所示。
打開python安裝目錄下的eric6.bat文件,啟動(dòng)Eric,并且通過菜單項(xiàng)目新建一個(gè)項(xiàng)目,鼠標(biāo)右鍵新建一個(gè)主窗口,程序自動(dòng)啟動(dòng)PyQt的Design界面。在新建的MainWindow鼠標(biāo)右鍵,創(chuàng)建菜單欄。
圖2
連續(xù)創(chuàng)建6個(gè)菜單,如圖3所示,輸入每個(gè)菜單結(jié)束后必須按Enter鍵才可以。
圖3
在每個(gè)菜單下面可以根據(jù)需要?jiǎng)?chuàng)建子菜單,如圖4所示,但是需要注意的是,子菜單的創(chuàng)建沒法直接輸入中文,需要在外面寫好復(fù)制,然后粘貼進(jìn)來,之后按Enter鍵才可以,這個(gè)可能是我安裝版本的問題。
圖4
之后在界面可以拖入控件,如圖5所示。
圖5
PyQt的Design界面窗口右邊有設(shè)置各個(gè)控件的屬性的窗口,可以設(shè)置很多的控件屬性。
創(chuàng)建完程序的GUI界面后,回到Eric,右鍵點(diǎn)擊剛設(shè)計(jì)的ui編譯窗體,之后在Eric會(huì)生成剛才的GUI界面代碼,如圖7所示。
圖6
圖7
如果想改這個(gè)GUI的顯式名稱,通過修改Eric生成的代碼,如圖8所示,修改如圖8中紅色框里名稱即可。
圖8
運(yùn)行之后該程序上面的顯式變成“我的GUI”。
圖9
展開 
不用重啟Abaqus,手把手教你快速調(diào)試插件程序GUI
為什么要對(duì)對(duì)話框的GUI做更改呢?
RSG對(duì)話框生成器中自帶的控件,確實(shí)可以做出簡(jiǎn)單的對(duì)話框,但也就只能做簡(jiǎn)單的對(duì)話框了。因?yàn)閹缀趺總€(gè)RSG提供的控件中的功能接口都很少,大量的功能接口被隱藏了(是真的?。?,還有一些控件用RSG是做不出來的。無論是控件的隱藏功能,還是做不出來的控件,想要使用它們,都必須以腳本的形式開發(fā)出來。
而在開發(fā)過程中,需要一次次的調(diào)試,如果每次調(diào)式都伴隨著重啟Abaqus,那是一件很頭疼的事。所以如果有不用重啟就能打開調(diào)式后的對(duì)話框的方法,使用起來則很痛快。
推出我的第二套課程:《Abaqus插件程序GUI的二次開發(fā) 初、中級(jí)篇》
課程一共21講,從腳本的角度,全面講解了RSG自帶的22種控件,以及沒包含的7種控件,共計(jì)29種控件,此外,還講解了注冊(cè)腳本中的8種類型關(guān)鍵字。課程以腳本的方式,不只是講解如何創(chuàng)建控件,更多的是挖掘控件被隱藏的功能,從而做出更豐富、更實(shí)用的插件對(duì)話框。
課程第一講,也有設(shè)置F和D兩個(gè)圖標(biāo)按鈕的演示,歡迎觀看。
Abaqus GUI二次開發(fā)三部曲:
Abaqus 主窗口GUI的二次開發(fā)
Abaqus插件程序GUI的二次開發(fā) 初、中級(jí)篇
Abaqus插件程序GUI的二次開發(fā) 高級(jí)篇
展開 借助Matlab-GUI的彈性力學(xué)教學(xué)實(shí)踐
Matlab也有圖形用戶界面開發(fā)環(huán)境,稱為GUI,即Graphical User Interface,是由窗口、菜單、圖形、光標(biāo)、按鍵、對(duì)話框和文本等各種圖形對(duì)象組成的用戶界面。GUI可以允許用戶定制與Matlab的交互方式,通過鼠標(biāo)或鍵盤選擇、激活這些圖形對(duì)象,直觀的達(dá)到用戶的求解、分析目的。
在彈性力學(xué)的學(xué)習(xí)中,數(shù)學(xué)推導(dǎo)求解較為繁瑣,學(xué)生容易在學(xué)習(xí)中產(chǎn)生畏難情緒,影響學(xué)習(xí)效果。考慮到Matlab-GUI具有編程簡(jiǎn)單、界面友好等特點(diǎn),開發(fā)彈性力學(xué)的推導(dǎo)、求解界面,將一部分?jǐn)?shù)學(xué)推導(dǎo)工作交給計(jì)算機(jī)完成,學(xué)生可以集中精力加強(qiáng)對(duì)原理和數(shù)學(xué)邏輯的理解,這樣可在一定程度上降低彈性力學(xué)的學(xué)習(xí)難度。本文正是基于這一目標(biāo)開展的教學(xué)實(shí)踐,以下先介紹Matlab-GUI設(shè)計(jì)環(huán)節(jié),然后再通過一個(gè)例題展示其計(jì)算結(jié)果。
01 問題規(guī)劃及Matlab-GUI的界面設(shè)計(jì)
本節(jié)將采用應(yīng)力函數(shù)法求解一個(gè)受任意載荷的簡(jiǎn)支梁模型。對(duì)于均布載荷作用下的簡(jiǎn)支梁,多項(xiàng)式應(yīng)力函數(shù)可得到完整的彈性解,然而,對(duì)于復(fù)雜載荷,甚至是不連續(xù)載荷問題,就需要用三角級(jí)數(shù)表示的應(yīng)力函數(shù)來求解,該應(yīng)力函數(shù)中待定參數(shù)較多,求解過程繁瑣,大多數(shù)教材中只提出該方法,不對(duì)其例題演示?;贛ATLAB-GUI編程設(shè)計(jì)三角級(jí)數(shù)應(yīng)力函數(shù)的求解界面,可以使學(xué)生從繁瑣的數(shù)學(xué)推導(dǎo)和求解中解脫出來,重點(diǎn)理解三角級(jí)數(shù)應(yīng)力函數(shù)法求解思路與過程,這對(duì)于培養(yǎng)學(xué)生實(shí)踐能力具有積極的示范作用。
在進(jìn)行Matlab-GUI編程時(shí),要根據(jù)“人-機(jī)”交互功能,規(guī)劃好輸入、輸出參數(shù)和輸出結(jié)果,首先對(duì)問題進(jìn)行分析規(guī)劃,確定問題中的各項(xiàng)參數(shù),包括基本輸入常量,求解過程中所產(chǎn)生的變量以及核心算法,繪制流程如圖1所示
圖1
其次,將各種控件在設(shè)計(jì)區(qū)域內(nèi)進(jìn)行布局設(shè)計(jì),主要包括基本輸入?yún)?shù)以及所需顯示的輸出結(jié)果。
展開 使用python進(jìn)行ABAQUS批處理-Gui代碼
“ 在使用python進(jìn)行ABAQUS批處理-總體思路中, 我們梳理了插件開發(fā)需求與流程, 本篇將詳細(xì)講述該插件的Gui的設(shè)計(jì)?!? 使用ABAQUS自帶的RSG即可搭建簡(jiǎn)易的GUI操作界面, 這樣可以避免書寫大量的GUI代碼, 只需針對(duì)其不符合使用需求的部分進(jìn)行修改即可. 這樣一來, 就要求在設(shè)計(jì)完成后, 保存GUI時(shí)應(yīng)選擇standard plug-in, 同時(shí)你還需要能夠找到這個(gè)文件, 來進(jìn)行修改.
如何使用RSG工具構(gòu)造GUI并關(guān)聯(lián)kernel程序的方法, 在本篇文章中不進(jìn)行討論.
在設(shè)計(jì)GUI的時(shí)候, 我們已經(jīng)發(fā)現(xiàn)了兩個(gè)問題:
label標(biāo)簽內(nèi)容不可以換行, 即使輸入\n也不行;
RSG沒有提供選擇文件夾的控件, 只提供了選擇文件的控件.
展開 ABAQUS GUI免重啟快速調(diào)試--終極版
“ 對(duì)于ABAQUS GUI的二次開發(fā), 最頭疼的莫過于每次更改From或者DB的時(shí)候都需要重啟ABAQUS才能看見更改后的效果,而反復(fù)的重啟ABAQUS會(huì)拖慢電腦運(yùn)行速度, 實(shí)在是一個(gè)磨煉心性的好辦法。而網(wǎng)上雖然有很多關(guān)于prototypeApp的討論, 但是一直感覺隔了一層窗戶紙, 就是不通透。而本文將闡述一下然后把這個(gè)prototypeApp梳理通透, 形成一個(gè)可以方便快捷的GUI開發(fā)調(diào)試框架?!? 或許有人好奇, 我為什么非要把prototypeApp折騰成這個(gè)樣子? 這是因?yàn)槲蚁胍粋€(gè)集使用開發(fā)調(diào)試使用于一體的自己開發(fā)的主窗口GUI界面, 像這樣:
如果不對(duì)prototypeApp進(jìn)行優(yōu)化, 那么每次調(diào)試插件的時(shí)候, 要么得在單獨(dú)的環(huán)境中調(diào)試, 要么就會(huì)把自己開發(fā)的主窗口GUI源文件搞得一團(tuán)亂麻.
而經(jīng)過我優(yōu)化的prototypeApp則可以很好地和主窗口GUI形成一個(gè)整體, 作為集開發(fā)調(diào)試使用于一體的ABAQUS環(huán)境. 這樣一來, 通過RSG自動(dòng)生成的插件, copy至plugins文件夾后, 經(jīng)過prototype調(diào)試合格后, 即可直接注冊(cè)到自己想注冊(cè)的位置并進(jìn)行使用. 這樣一來就形成了一個(gè)閉環(huán)生態(tài), 并且可以在使用過程中, 不斷優(yōu)化調(diào)試.
展開 ABAQUS GUI免重啟快速調(diào)試--終極版
“ 對(duì)于ABAQUS GUI的二次開發(fā), 最頭疼的莫過于每次更改From或者DB的時(shí)候都需要重啟ABAQUS才能看見更改后的效果,而反復(fù)的重啟ABAQUS會(huì)拖慢電腦運(yùn)行速度, 實(shí)在是一個(gè)磨煉心性的好辦法。而網(wǎng)上雖然有很多關(guān)于prototypeApp的討論, 但是一直感覺隔了一層窗戶紙, 就是不通透。而本文將闡述一下然后把這個(gè)prototypeApp梳理通透, 形成一個(gè)可以方便快捷的GUI開發(fā)調(diào)試框架。”
或許有人好奇, 我為什么非要把prototypeApp折騰成這個(gè)樣子? 這是因?yàn)槲蚁胍粋€(gè)集使用開發(fā)調(diào)試使用于一體的自己開發(fā)的主窗口GUI界面, 像這樣:
如果不對(duì)prototypeApp進(jìn)行優(yōu)化, 那么每次調(diào)試插件的時(shí)候, 要么得在單獨(dú)的環(huán)境中調(diào)試, 要么就會(huì)把自己開發(fā)的主窗口GUI源文件搞得一團(tuán)亂麻.
而經(jīng)過我優(yōu)化的prototypeApp則可以很好地和主窗口GUI形成一個(gè)整體, 作為集開發(fā)調(diào)試使用于一體的ABAQUS環(huán)境. 這樣一來, 通過RSG自動(dòng)生成的插件, copy至plugins文件夾后, 經(jīng)過prototype調(diào)試合格后, 即可直接注冊(cè)到自己想注冊(cè)的位置并進(jìn)行使用. 這樣一來就形成了一個(gè)閉環(huán)生態(tài), 并且可以在使用過程中, 不斷優(yōu)化調(diào)試.
展開 學(xué)習(xí)abaqus gui開發(fā)的第一步
l abaqus中的腳本接口
l 快速建模
l 自動(dòng)后處理、訪問輸出數(shù)據(jù)庫
l 監(jiān)控分析作業(yè)、參數(shù)分析、優(yōu)化分析
2.2 gui開發(fā)指南和官方文檔
如果你有一定的定制需要,比如封裝一個(gè)腳本文件、或者封裝一個(gè)定制化插件,第一本書就不太能滿足需,就需要參考后面兩本書。第二本和第三本內(nèi)容比較接近,《abaqus的gui開發(fā)指南》講的比較深,官方文檔講的很全面。以后的分享中就以官方文檔為基礎(chǔ),再輔以第二本書的內(nèi)容幫助大家理解,我們一起學(xué)習(xí)。
分享人:CAE咚咚鏘
一個(gè)GUI編程模型
Matlab的GUI編程我們可以用兩種方式實(shí)現(xiàn),一是自己用代碼構(gòu)建界面,二是借助GUI設(shè)計(jì)工具。
第一種方法完全用代碼設(shè)計(jì)界面比較麻煩,第二種方法屬于所見即所得模式,比較直觀方便,我比較喜歡用后者。后者除了生成一個(gè)fig文件外,同時(shí)會(huì)生成一個(gè)m文件,用以編寫響應(yīng)代碼。雖然生成的代碼帶來了一些方便之處,有些類似于VC中的MFC,但是我卻覺得太過復(fù)雜,而且來龍去脈也不甚清楚。我喜歡所有的代碼都在自己的掌握之中,于是擯棄了matlab自己生成的代碼,自己編寫了一個(gè)GUI的模型,用起來還是比較方便的。

一個(gè)GUI編程模型
Matlab的GUI編程我們可以用兩種方式實(shí)現(xiàn),一是自己用代碼構(gòu)建界面,二是借助GUI設(shè)計(jì)工具。
第一種方法完全用代碼設(shè)計(jì)界面比較麻煩,第二種方法屬于所見即所得模式,比較直觀方便,我比較喜歡用后者。后者除了生成一個(gè)fig文件外,同時(shí)會(huì)生成一個(gè)m文件,用以編寫響應(yīng)代碼。雖然生成的代碼帶來了一些方便之處,有些類似于VC中的MFC,但是卻覺得太過復(fù)雜,而且來龍去脈也不甚清楚,編寫了一個(gè)GUI的模型,用起來還是比較方便的。
GUIModel.zip
滲透壓workbench GUI設(shè)置,及一些橡膠密封的注意事項(xiàng) ¥1.9
ANSYS Update -滲透壓workbench中GUI設(shè)置,及一些橡膠密封的注意事項(xiàng)
!學(xué)習(xí)重點(diǎn):
2024R2之前,F(xiàn)luid-Pressure-Penetration都需要用APDL進(jìn)行設(shè)置,方法見此鏈接
https://www.yqgqt.org.cn/post/1196709 (包含橡膠材料模型的處理,滲透壓原理,相關(guān)APDL代碼等)
現(xiàn)在可以用GUI設(shè)置了
!1、 Fluid-Pressure-Penetration GUI設(shè)置
注意:接觸要設(shè)置為對(duì)稱或非對(duì)稱接觸
在后處理的contact tool里查看fluid pressure
!2、 密封材料的分析重點(diǎn)
1. 考慮裝配尺寸的公差;
最小的密封件+最大的間隙 -》評(píng)估接觸壓力,是否能密封良好;最大的密封件+最小的間隙 -》 評(píng)估橡膠主應(yīng)變,是否發(fā)生破損。
展開 MATLAB GUI界面實(shí)現(xiàn)圖像二值化處理的實(shí)時(shí)顯示
MATLAB GUI界面實(shí)現(xiàn)圖像二值化處理的實(shí)時(shí)顯示
參考彭軍大神的《一個(gè)實(shí)例搞定MATLAB界面編程》——matlab-gui界面編程入門教程
GUI界面是采用一個(gè)滑塊來調(diào)整彩色變黑白的程度。
界面主要包含兩個(gè)函數(shù),一個(gè)主函數(shù)untitled,另外一個(gè)通過滑塊即時(shí)控制二值化的函數(shù)im2bw_args,在主函數(shù)中主要需要設(shè)置當(dāng)點(diǎn)擊“打開”時(shí)的反應(yīng)
讀取路徑下的圖片,這里面使用uigetfile函數(shù)獲得讀取圖片的名稱和路徑,同時(shí)需要把圖片的路徑和名稱合并為字符串fpath,然后使用imread函數(shù)讀取路徑,再使用imshow函數(shù)顯示圖片。
而當(dāng)點(diǎn)擊“保存”時(shí),需要設(shè)置圖片的保存路徑,使用getappdata取得打開圖片的數(shù)據(jù),再使用imwrite保存圖片。
此時(shí)點(diǎn)擊“圖像二值化”按鈕,即會(huì)調(diào)用im2bw_args函數(shù),其內(nèi)部中關(guān)于滑塊的函數(shù)為
val = get(hObject,'Value');
set(handles.txt_display,'String',num2str(val));
以上兩句就是將滑塊中的值傳遞給靜態(tài)文本Static text。
而在打開二值化滑塊控件時(shí),我們需要通過findobj函數(shù)將該控件的figure句柄傳遞給h_untitled,,再使用guihandles函數(shù)轉(zhuǎn)化句柄,之后就可以用這個(gè)轉(zhuǎn)化后的句柄來引用untitled.fig中的任何一個(gè)控件了,這樣通過實(shí)時(shí)更新結(jié)構(gòu)體,才能將靜態(tài)文本的變化同步顯示出來。
展開 LS-prepost 后臺(tái)運(yùn)行不出現(xiàn)GUI界面的命令行(做二次開發(fā)平臺(tái)的朋友可以留意一下?。?/span>
今天有人問,如何在后臺(tái)運(yùn)行LS-prepost但是不出現(xiàn)GUI的界面
*************************************************************************************************************************
提供如下答案 ,貼在這里,作為備份,怕以后又找不到
在DOS 窗口 敲入 C:\"Program Files"\LSTC\"LS-PrePost 4.8"\lsprepost4.8_x64.exe c= XX.cfile -nographics
XX.cfile 是命令行輸入文件
nographics是非gui
*************************************************************************************************************************
官方的網(wǎng)站如下:
http://lstc.com/lspp/content/other/command/command.shtml
具體的參數(shù)摘錄如下:
Almost all graphical user interface (GUI) interaction generates commands, and these commands are written to a file called lspost.cfile.
展開