Пікірлер
@navnilniraj7679
@navnilniraj7679 Сағат бұрын
Hi Amuthan I have been watching your framework series. Its a great collection and very informative. Is Selenoid free to use ? I am getting a bit confused as you mentioned in this video that its moon version requires some subscription charges. Please let me know if we can use this as open source. It will be really helpful to me.
@TestingMiniBytes
@TestingMiniBytes 8 секунд бұрын
@@navnilniraj7679 moon requires license but selenoid is free
@vishwaamk73
@vishwaamk73 Күн бұрын
Very clear, please make video on add locators. Thanks Amuthan
@bharadwajagudladona1435
@bharadwajagudladona1435 3 күн бұрын
How can we do this with c#?
@CcitJavaDeveloper
@CcitJavaDeveloper 6 күн бұрын
Indian😅😅😅
@ConradoMendez-bc3tu
@ConradoMendez-bc3tu 7 күн бұрын
great video! thanks. did you find the way to run emulators wit api level >= 30? im struggling in finding a way to do it and i see in many places that people face the same but there are not so much answers around
@TestingMiniBytes
@TestingMiniBytes 7 күн бұрын
@@ConradoMendez-bc3tu after making this video I realised the emulators from these runners were not really reliable for larger suites.
@ConradoMendez-bc3tu
@ConradoMendez-bc3tu 6 күн бұрын
@@TestingMiniBytes yes! found the same issue here and I saw the same comments in GitHub community. Did you find another video or one of yours with the information on how to user other avd's?
@TestingMiniBytes
@TestingMiniBytes 6 күн бұрын
@@ConradoMendez-bc3tu I did not researched more and started to run tests on lambdatest.
@chinmayk2657
@chinmayk2657 8 күн бұрын
How to make generic extent report for multiple test cases in c# visual studio
@maheshbharti2105
@maheshbharti2105 9 күн бұрын
Hi Amuthan, I have written same code by following your video though I am able to read the value from Excel by using ExcelUtil i have coiped same code in IMethodInterceptor i have added this into the xml file as well but my test is not running kindly check the code once public class MethodInterceptor implements IMethodInterceptor{ public List<IMethodInstance> intercept(List<IMethodInstance> methods, ITestContext context) { List<Map<String, String>> list=ExcelUtils.getDetails(); List<IMethodInstance> result= new ArrayList<IMethodInstance>(); for(int i=0;i<methods.size();i++) { for(int j=0;j<list.size();j++) { if(methods.get(i).getMethod().getMethodName().equalsIgnoreCase(list.get(j).get("testname"))) { if(list.get(j).get("execute").equalsIgnoreCase("yes")) { methods.get(i).getMethod().setDescription(list.get(j).get("testdescription")); methods.get(i).getMethod().setInvocationCount(Integer.parseInt(list.get(j).get("count"))); methods.get(i).getMethod().setPriority(Integer.parseInt(list.get(j).get("priority"))); result.add(methods.get(i)); } } } } return result; } } public final class ExcelUtils { private ExcelUtils() {} public static List<Map<String,String>> getDetails(){ FileInputStream fs=null; List<Map<String,String>> list = null; try { fs = new FileInputStream(FrameworkConstants.getExcelpath()); XSSFWorkbook workbook= new XSSFWorkbook(fs); String sheetname="RUNMANAGER"; XSSFSheet sheet = workbook.getSheet(sheetname); DataFormatter formatter = new DataFormatter(); int lastrownum=sheet.getLastRowNum(); int lastcolnum= sheet.getRow(0).getLastCellNum(); Map<String,String> map =null; list = new ArrayList<Map<String,String>>(); for(int i=1;i<=lastrownum;i++) { map= new HashMap<String,String>(); for(int j=0;j<lastcolnum;j++) { String key = sheet.getRow(0).getCell(j).getStringCellValue(); String value = sheet.getRow(i).getCell(j).getStringCellValue(); map.put(key, value); } list.add(map); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { if(Objects.isNull(fs)) { fs.close(); } } catch (IOException e) { e.printStackTrace(); } } return list; } } <?xml version="1.0" encoding="UTF-8"?> <suite name="Suite" data-provider-thread-count="3"> <listeners> <listener class-name="com.tmb.listeners.ListenerClass"/> <listener class-name="com.tmb.listeners.MethodInterceptor"/> </listeners> <test thread-count="1" name="Test" parallel ="methods"> <classes> <class name="com.tmb.test.OrangeHRMTests"/> </classes> </test> <!-- Test --> </suite> <!-- Suite --> public class OrangeHRMTests extends BaseTest{ private OrangeHRMTests() { } @Test(dataProvider = "LoginTestDataProvider") public void loginLogoutTest(String username,String password) throws InterruptedException { String title=new OrangeHRMLoginPage().enterUsername(username). enterPassword(password).clickOnlogin() .clickWelcome().clickLogout().getTitle(); Assertions.assertThat(title) .isEqualTo("OrangeHRM"); } @Test(dataProvider = "LoginTestDataProvider") public void newTest(String username,String password) throws InterruptedException { String title=new OrangeHRMLoginPage().enterUsername(username). enterPassword(password).clickOnlogin() .clickWelcome().clickLogout().getTitle(); Assertions.assertThat(title) .isEqualTo("OrangeHRM"); } @DataProvider(name="LoginTestDataProvider",parallel=true) public Object[][] getData(){ return new Object[][] { {"Admin","admin123"} //{"Admin","admin123"}, //{"Admin","admin231"} }; } } =============================================== Suite Total tests run: 0, Passes: 0, Failures: 0, Skips: 0 ===============================================
@mahadevvedios4275
@mahadevvedios4275 9 күн бұрын
nice explation thanks sir
@ctacts
@ctacts 9 күн бұрын
I am worring that we can click like button only once. @Testing Mini Bytes It's greate effort to make the topics very easily understandable.
@shubhamsharma-mt4hs
@shubhamsharma-mt4hs 9 күн бұрын
This is really helpful session ! ❤
@shikhar5300
@shikhar5300 14 күн бұрын
I am getting error when giving @column(name= "something", index=0 in data supplier as argument because it only accept name argument. Please suggest.
@AzharKhan-mk9rp
@AzharKhan-mk9rp 14 күн бұрын
<input data-v-1f99f73c="" class="oxd-input oxd-input--active" name="username" placeholder="Username" autofocus=""> How to find the above element can anyone answer these ?
@shikhar5300
@shikhar5300 14 күн бұрын
Please help, I am getting blank screeshot as its written after click() as below: public class SeleniumUtils { public static void click(By by,String elementName){ WebElement element = waitUntilElementPresent(by); element.click(); ExtentLogger.pass(elementName+" is clicked successfully");
@mr_possible6197
@mr_possible6197 15 күн бұрын
I am getting error - IntelliJ IDEA code style XML import failed with error message: The file doesn't seem to be a valid Intellij IDEA XML scheme, it should contain code_scheme, found module... This is when I copied your file. Not sure whats the catch
@vijayprasad7094
@vijayprasad7094 17 күн бұрын
Hey @amuthan thanks for the videos , I am having trouble using faker not sure if this library is deprecated pls let me know thanks
@shikhar5300
@shikhar5300 4 күн бұрын
Its depricated I think. Did you get any owrkaround?
@omegajoint7339
@omegajoint7339 18 күн бұрын
I am tired of basic tutorials channels. Finally a teacher for experienced ones.
@shikhar5300
@shikhar5300 19 күн бұрын
Amuthan, I have read somewhere that we cant use non static variables inside static method because static methods are object independent and will be called first even before the object of that class is created and if there is no object then no sense of using instance variables.
@TestingMiniBytes
@TestingMiniBytes 18 күн бұрын
@@shikhar5300 I think you are confused. May be watch the playlist complete and you ll get your answer
@Akash-or3xj
@Akash-or3xj 20 күн бұрын
Hi Bro, Thanks for series on Extents Report ..this is really awesome.
@shitalmalviya9796
@shitalmalviya9796 20 күн бұрын
If I want to implement real time dashboard in my company project , how I would do since execution happened both on my system and Jenkins. Do I need to get a new machine to have elastic and Kiana run all the time
@TestingMiniBytes
@TestingMiniBytes 18 күн бұрын
@@shitalmalviya9796 yes, you can also use other tools now like Datadog, report portal.
@firefacthindi2333
@firefacthindi2333 21 күн бұрын
Hii sir I want to ask you that salenium all things are done in previous video and this video started from java. so i don’t understand please explain??
@TestingMiniBytes
@TestingMiniBytes 18 күн бұрын
@@firefacthindi2333 you are not missing anything. My approach is to teach selenium and java parallely. Just watch it and you ll understand
@DLight-t8j
@DLight-t8j 21 күн бұрын
I ended up in "StackOverflowerror" upon using "CRITICAL.toLowerCase()" directly within the overridden method thinking the "toString()" computation will be handled by javacompiler, instead it recursively called and filled the console in red😅. Nice! This experience taught me that, toString() is only called when printing. In other cases, the toString() or name() method is needed to retrieve the string of enum constants." Thanks, Amuthan! You've brilliantly covered all the uses of Enum, just like user-defined constants within Enum. Great job! 😉
@BaluBalireddy
@BaluBalireddy 23 күн бұрын
Thank u but slowly speak
@VaibhavJain-z7j
@VaibhavJain-z7j 24 күн бұрын
Great work Amuthan. Would you mind creating a video or mentioning here itself, how many income streams youtuber have and more in depth things. Please guide us it will help us in creating content with transparency.
@TestingMiniBytes
@TestingMiniBytes 23 күн бұрын
@@VaibhavJain-z7j I work a full time job and earn approximately 8000rs via KZfaq per month
@VaibhavJain-z7j
@VaibhavJain-z7j 18 күн бұрын
@@TestingMiniBytes Thanks a lot for sharing this.
@dhirajsingh0510
@dhirajsingh0510 24 күн бұрын
You saved us bro 💓 Keep it up your Great work ♾️
@ctacts
@ctacts 25 күн бұрын
It solved my problem statement
@Bsrd13579
@Bsrd13579 25 күн бұрын
Hi Amuthan, I declared a variable in Pre-request script, but unable to access it in params, any thing i may have missed?
@TestingMiniBytes
@TestingMiniBytes 23 күн бұрын
@@Bsrd13579 you should store it in collection variable and then try to access it
@strangemate
@strangemate 26 күн бұрын
@Testing Mini Bytes, is this the book you mentioned for the clean code? Clean Code_ A Handbook of Agile Software Craftsmanship - Robert C. Martin
@TestingMiniBytes
@TestingMiniBytes 25 күн бұрын
yes
@AbhishekSingh-h6s
@AbhishekSingh-h6s 27 күн бұрын
Thanks Amuthan, For a SDET role you have created the exact framework by using the correct tools what companies are looking for right now. Can you please add a video to explain this entire framework flow it will be really helpful during interviews for many candidates.
@Humani11
@Humani11 27 күн бұрын
Amuthan, the code you have used to build Builder pattern is not making the object immutable? and cannot we do the same setter methods in Employee POJO directly if we do not care about immutability of objects?
@mittalri
@mittalri 27 күн бұрын
Hi is there similar video for gRPC services as well? please suggest.
@SubinMichavel
@SubinMichavel 28 күн бұрын
how can I get rid of the spark folder that got generated using the json file, can that be removed programmatically or how can I get rid of that?
@SubinMichavel
@SubinMichavel 28 күн бұрын
what about the spark folder, why is that getting generated and how I can I get rid of it? Any idea?
@Humani11
@Humani11 28 күн бұрын
Wouldn’t this be a violation of SOLID principles if we will keep updating the same class file
@madhumuppala2274
@madhumuppala2274 29 күн бұрын
Hi Amuthan, just like your other series, this is just awesome to the best of knowledge without any wastage. I get quick questions here though. 1) Is there any limiation for using the regex strings for different elements? for instance, I could not get this to work in google.co.in. await page.getByLabel(/search/i, { exact: true }).fill("Microsoft Playwright Logo"); where this is working. await page.getByLabel('Search', { exact: true }).fill('Microsoft Playwright Logo'); 2) What is the plugin you were using for code completion? Is it because your idea is an ultimate version?
@ajitcs2937
@ajitcs2937 29 күн бұрын
if someone is facing issue with docker container with browser crashing , then start your docker container with shared memory of 2g eg; docker run -d -p 4444:4444 -p 7900:7900 --shm-size="2g" selenium/standalone-chrome:latest
@DLight-t8j
@DLight-t8j 29 күн бұрын
The session is full of power house, interesting and easily understandable🙂 In the method chaining, what if the method is not very sure about the next page. If a business workflow has a chance of giving different pages for different scenarios upon clicking a button (say login/submit), then how the method dynamically returns the respective page object.
@TestingMiniBytes
@TestingMiniBytes 29 күн бұрын
Though there are ways to do it using generics, I have covered them in playlists like The One Framework, you can ignore method chaining for such pages now. It is not mandatory to do it in all pages.
@DLight-t8j
@DLight-t8j 23 күн бұрын
@@TestingMiniBytes Thanks Amuthan for the helpful response!
@sarathr4495
@sarathr4495 29 күн бұрын
Your videos are useful 👍
@sarathr4495
@sarathr4495 29 күн бұрын
Learned new stuff
@singhrawatbipin
@singhrawatbipin Ай бұрын
Hi. thank you for your amazing tutorial. It is one of the best I ever encountered. I am having one issue building the project after importing it. """The project was not built since its build path is incomplete. Cannot find the class file for org.openqa.selenium.interactions.HasTouchScreen. Fix the build path then try building this project""" I am stuck on this for last few days, I have tried multiple solutions but nothing worked. Can you please help me?
@TestingMiniBytes
@TestingMiniBytes Ай бұрын
@@singhrawatbipin something to do with appium and selenium versions
@ctacts
@ctacts Ай бұрын
Learn new thing related to Listeners.
@ajitcs2937
@ajitcs2937 Ай бұрын
hey @TestingMiniBytes although concept is very good i encountered a problem i made the runtime exception for config file key value not prsent that eg url but when i run i saw browser opening and then nothing happened prog got terminated due to our custom runtime exception but browser didnt close beacuse abrupt termination
@priyankav2890
@priyankav2890 Ай бұрын
Hi Amuthan Did you ever come across a scenarios where there is a api spec and there are some rules for each attribute in api and we need to verify them with multiple test data for eg { someInputAttribute: ghiydbmcshjb Id:4567 } In spec someInputAttribute:{ type: string length: 7 pattern: [/s//S]* } So i need to send invalid data and verify length error , type error and pattern error For now i am sending invalid data and verifying error message But i want to refactor code and create a method which handles this better There are around 50 attributes like this If you know can you suggest some design pattern or tool which willl be helpful
@jaykishorpendharkar2838
@jaykishorpendharkar2838 Ай бұрын
Entire series is very informative. Thanks for explaining advance automation concepts .. For me ,In this Part 22 getExtentTest() from ExtentManager is returning null value and tests are failing. Could you please suggest me in this situation ?
@praneeth-k7o
@praneeth-k7o Ай бұрын
Its a great video. But i have a question here what about organization logo ? We are mentioning as img path in config.xml file? Can we convert image yo base64? In xml file ??
@priyankav2890
@priyankav2890 Ай бұрын
Hi Amuthan Hopeyou are doing fine Can you please suggest best tool or framework for test dashboard analytics and insights for playwright. If you can suggest cloud based also is fine
@TestingMiniBytes
@TestingMiniBytes Ай бұрын
@@priyankav2890 we use Datadog. You can use report portal, elk or similar to that.
@priyankav2890
@priyankav2890 Ай бұрын
@@TestingMiniBytes thanks for replying...you mean git hub report portal ?
@priyankav2890
@priyankav2890 Ай бұрын
@@TestingMiniBytes thanks for Reply Amuthan When you say report portal is that Git hub report portal and also all these three options which you have mentioned are they only for test automation or can be used for performance and functional testing ?
@shruthirampure3344
@shruthirampure3344 Ай бұрын
Thank you issue solved 🎉
@samkitjain7883
@samkitjain7883 Ай бұрын
Thanks, It's really a good thing, but how do I share this link with the client? I generated the link by going to share, but the client is unable to open the link.
@TestingMiniBytes
@TestingMiniBytes Ай бұрын
@@samkitjain7883 it should be publically accessible
@omegajoint7339
@omegajoint7339 Ай бұрын
Hi Creator, Please excuse me if I sound stupid, but my question is If local/method variables are thread safe then why are we creating driver as class instance. Why don't we initiate it in a method and just return driver. That way we will have a new driver object for every thread. Please answer
@TestingMiniBytes
@TestingMiniBytes Ай бұрын
@@omegajoint7339 you cannot access local variable outside that method
@omegajoint7339
@omegajoint7339 Ай бұрын
Great explanation
@omegajoint7339
@omegajoint7339 Ай бұрын
How come I find this Gold after 3 years of upload. This is some good stuff.