Introduction of Murex System – What is Murex, How to Learn, and career opportunities?

Software technologies are growing with great velocity and have great flexibility to handle complex business workflows.  This enables organizations to build amazing software tools to automate a complex business process like Enterprise resource management tools like ERP, SaaS, many tools for hotel management like Birch Street Systems, many tools for accounting and finance like Oracle Finance (HCM), etc.

Electronics platform gives new heights to the trading industry (Investment Banking). Murex is the one of best tools to manage end to end Trade Life Cycle and adopted by World leading Banks like ANZ, NatWest, JP Morgan, HSBC, Citibank, ICICI, Standard Chartered Banks, etc.

Murex Introduction

Murex is Java Applet based tool that provides a user-friendly screen to manage Front office Activities, Middle office activities, and Back Office activities. It’s used for Counterparty data set up (Static data set up), pre-trade booking validation, Middle office validation, exchange acknowledgment, trade settlement and clearing, user management, market data sync up, market risk calculation( VAR calculation- Value at Risk Calculations), MLC ( Murex Limit Controllers), Reporting, etc.

Murex also gives the tool MxTest(Onyx) to automate Murex tasks like trade insertion( e-tradepad insertion), OSP(One-time processing), workflows automation, and reporting. MxTest has predefined blocks for each test case and automation developers need to configure as per their test case.

Murex Functions: Murex Mx3 platform gives flexibility to financial institutions to manage Capital Markets. It helps to manage:

  1. Trading
  2. Risk Management
  3. Collateral
  4. Operations
  5. Investment Management           
  6. Treasury

Murex Features: Murex has the following features:

  1. Platform: Murex builds on a client-server model so easily extendable across platforms.
  2. Connectivity:  Banking institutions provide different interfaces to book trades (like Bloomberg, Wallmart, VCON, Loan IQ, etc). Murex is very flexible and integrates with external interfaces.
  3. Performance: Murex is a highly scalable and efficient performance tool.

Ways to Learn Murex:

Murex is a licensed-based tool so to learn Murex you have two options first option either you employed directly by Murex or join an organization that is working on Murex. But if both options are not available then you can learn the following topics which help you get opportunities:

  1. Build strong expertise on Capital Market Products and trade life cycle.
  2. Learn deeply about XML and Java
  3. Be the expert on SQL and Unix
  4. Collect financial learning certificates

Job Opportunities in Murex

As Murex is widely used by World leading financial institutions so Murex has bulk job opportunities in Murex Developer, MXML Developer, Murex Business Analyst, Murex Data Analyst, Murex DataMart Engineer, MxTest (Onyx) Professions ( Murex Automation Professional, Murex Functional Tester, and Murex Performance Tester.

To get an opportunity on Murex check career sections of world-leading banking institutions, capital market firms, and service-based IT Companies like Accenture, Sapient, HCL, TCS, Infosys, Virtusa, etc. Also many job-oriented sites LinkedIn, Naukri, Indeed, CareerBuilder and Ladders, etc.

Hope this article helps you to know about Murex, Murex features, technologies involved and job opportunity available on it. Please feel free to contact us at thoughtcoders@hotmail.com or WhatsApp on +919555902032. Also, you can refer to our other blogs on Java, SQL, and Selenium.

References: https://www.murex.com

Chrome Headless – Execute Automation Script in Chrome Headless Browser

How to Run Automation Test on Chrome Headless Browser?

Hello Friends! Welcome to our Selenium Tutorial. In this tutorial, we will learn how to execute automation script in Chrome Headless Browser, what is the benefit of it is and step by step guide for implementation along with Code and their explanation.

What is Chrome Headless Browser?

Google Chrome launched Chrome Headless browser since Google Chrome 59. This browser is extensively popular for Selenium Automation Test Execution and server environments where you need not visible UI shell. During Headless Execution browser will not open but complete execution will happen as similar to a real browser.

Benefits of Headless Execution

Automation script execution preferred on Chrome Headless mode because of following reason.

  1. Quick execution as compared to real browser
  2. No user interruption as it runs in the backend

Prerequisite: 

  1. Java should be installed on the machine(if not then refer link- step by step guide for java installation)
  2. Selenium Project should be set up on your machine( if not then refer link – step by step guide to create selenium project)

Step 1: 

Open Selenium Project and create a new class for Chrome Headless browser test.

public class ChromeHeadless {

}

Step 2:

Write method and use ChromeOptions and pass “headless” in an argument. ChromeOptions used to configure browser properties. In this example, we will configure browser so that it will run in headless mode.

 public static void main(String args[])

    {

        WebDriverManager.chromedriver().setup();

        // Use Chrome Options pass arguments “headless”  for headless method       

ChromeOptions options = new ChromeOptions();

        options.addArguments(“headless”);

        options.addArguments(“window-size=1200×600”);

    }

}

Step 3:

Invoke Webdriver,  navigate to website and get title and print:

WebDriver driver = new ChromeDriver(options);

driver.manage().window().maximize();

driver.get(“https://sdethub.blogspot.com/”);

String title = driver.getTitle();

System.out.println(“Website Title: “+title);

driver.close();

Step 4:

Now complete code and execute. You will find browser will not open but your test completed. Refer below for compete code.

Complete Code:

import io.github.bonigarcia.wdm.WebDriverManager;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.chrome.ChromeDriver;

import org.openqa.selenium.chrome.ChromeOptions;

public class ChromeHeadless {

    public static void main(String args[])

    {

        WebDriverManager.chromedriver().setup();

        // Use Chrome Options pass arguments “headless”  for headless method                       

ChromeOptions options = new ChromeOptions();

        options.addArguments(“headless”);

        options.addArguments(“window-size=1200×600”);

        WebDriver driver = new ChromeDriver(options);

        driver.manage().window().maximize();

        driver.get(“https://sdethub.blogspot.com/”);

        String title = driver.getTitle();

        System.out.println(“Website Title: “+title);

        driver.close();

    }

}

Console Output:

Summary:

i. Use ChromeOptions and add arguments “headless” in options object.

  options.addArguments(“headless”);

ii. Add window size as per your application compatibility.

    options.addArguments(“window-size=1200×600”);

Congratulations

Now you learned how to run an automation script on Chrome Headless browser and implemented code. If you like this tutorial then please write feedback on thoughtcoders2020@gmail.com also follow us on social media. To learn more about Selenium refer to our other tutorials.

Selenium- Capture screenshot using TestNG ITestListeners

Every automation test is expected to capture screenshot when any failure happened. Luckily, Selenium provides method to capture screenshot and Testng provides useful listeners which manages the test events.
In this tutorial, we will learn how to capture screenshot on test failure using Testng listeners. Each step is explained in detail explanation.
Refer below for step by step explanation:

Pre-Requisite:

It will be great if you complete following steps:

  1. Java should be installed ( If Java is not installed then click on the link (Install & Setup Java)
  2. Selenium TestNG Project should be set up (Refer link if Selenium TestNG project is not set up – Setup Selenium TestNG)
  3. Basic understanding of the Screenshot Capture method (Refer our blog if you need to understand the Basics of Screenshot capture)

Once after completion of pre-requisite we need to write few classes for following purposes:

  1. Base Class: In Base class, we need to write the most frequent methods and variable which we need to use across multiple classes. In this tutorial, we declared a static WebDriver by extending the Base Class.
  2. TestngListeners Class: This class implemented ITestListener methods and write screenshot capture code in on test failure.
  3. Test Class (captutreScreenShotonFailure): Create a test class and write assertion code.

Step 1: Open Eclipse and Selenium Project and create one Base class. Declare static WebDriver instance which can use across different classes.
Refer below for Base class Code:

package com.thoughcoders.automation;
import org.openqa.selenium.WebDriver;

public class Base {
public static WebDriver driver;
}

Step 2: Create test class captutreScreenShotonFailure, extend Base class to utilize WebDriver driver and write test method:
Refer below for captutreScreenShotonFailure class code:

package com.thoughtcoders.automation.test;

import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.Assert;
import org.testng.annotations.Listeners;
import org.testng.annotations.Test;
import com. thoughtcoders.automation.Base;
import io.github.bonigarcia.wdm.WebDriverManager;

public class captutreScreenShotonFailure extends Base {
	
@Test
public void HomePageTest() {
		WebDriverManager.chromedriver().browserVersion("83.0").setup();
driver = new ChromeDriver();
driver.manage().window().maximize();
driver.get("https://thoughtcoders.com/");
System.out.println("Title of WebPage: "+ driver.getTitle());
Assert.assertEquals("aThoughtCoders | Web Development, Automation,"
 + " QA Training", driver.getTitle());
driver.close();
}
		
}

Step 3: Create a class to implement TestNG Listeners (TestngListeners) and implement ITestListner methods.
ITestListner: ITestListeners is the most popular TestNG interface which provides a very useful set of methods and by implementing these methods we perform the action on the Test Events. Refer below for the list of ITestListners
Override method on test failure and write code to capture screenshot and save in root. (If you need a detail explanation of the screenshot capture code then refer link – https://thoughtcoders.com/blog/capture-screenshots-using-selenium-webdriver/
)

@Override
public void onTestFailure(ITestResult arg0) {
try {
File file = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(file, new File(System.getProperty("user.dir")+File.separator + 
				arg0.getName()+"_"+arg0.getEndMillis()+".png"));
System.out.println("*******Screenshot captured********");
} 
catch(Exception e) {
e.printStackTrace();
}
}

Step 5: Open Testng.xml and add the below step to integrate TestNG listeners.

Complete testng.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
<listeners>
<listener class-name="listeners.TestngListeners"/>
</listeners>
  <test thread-count="5" name="Test">
    <classes>
      <class name="com.qaedupoint.automation.test.captutreScreenShotonFailure"/>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->

Step 6- Run Test class explicitly- To run the test use @Listeners(className.class) annotation and pass the class name as an argument.
@Listeners(listeners.TestngListeners.class)

Listeners annotation usage

Step 7: Run Testng.xml and perform test.
As assertions are knowingly failed to so screenshot is captured and save into project root folder.
Console output:
Title of WebPage: ThoughtCoders | Web Development, Automation, QA Training
Screenshot captured*
Suite
Total tests run: 1, Failures: 1, Skips: 0
After test execution, right click on project and refresh. Now captured screenshot visible and saved into project root directory.

Output: Screenshot file

Congratulations, you have successfully captured screenshot on test failure. Feel free to contact us on query@thoughtcoders.com if you face any issue or need more information.

Subscribe to our Newsletter:

How to take screenshots using Selenium WebDriver

Capture screenshot in Selenium:

The screenshot is one of the most frequent activities of testing. The screenshot shot is always taken to capture important details or record specific event during testing. Generally, most of us capture a screenshot on test failure. This tutorial explains how to capture screenshot and store at the specific directory.
This tutorial provides step by step detailed explanation of each step and details of methods provided by Selenium WebDriver. Refer below for step by step implementation.

Read More How to take screenshots using Selenium WebDriver