# Please update the katalon-studio-testing-framework repository

**URL:** <https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804>\
**Category:** Web Testing\
**Tags:** katalon-studio\
**Created:** [December 20, 2019, 6:44am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804 "2019-12-20T06:44:24Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [December 20, 2019, 6:44am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/1 "2019-12-20T06:44:24Z")

</div>

I have a problem on Katalon Studio 7.1.2 especially about the `com.kms.katalon.core.util.internal.ProxyUtil` class. I wanted to read the source. I looked for the source code disclosed on Github at

> **[Commits · katalon-studio/katalon-studio-testing-framework](https://github.com/katalon-studio/katalon-studio-testing-framework/commits/master)**
>
> Katalon Studio Open-source Testing Framework. Contribute to katalon-studio/katalon-studio-testing-framework development by creating an account on GitHub.

and found the repository is outdated. It contains the source of v7.0.1 while the current version is 7.1.2.

@devalex88

Please update the disclosed source code repository to make it up to date.

---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 5, 2020, 2:17am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/2 "2020-11-05T02:17:31Z")

</div>

@ThanhTo  
@devalex88

I want to read the source of the `WebUI.verifyAllLinksOnCurrentPageAccessible` keyword. Why? See the following discussion:

> [@How to find the inaccessible links on a webpage](http://forum.katalon.com/t/how-to-find-the-inaccessible-links-on-a-webpage/48716/20):
>
> @Sdhongadi These 2 lines indicate that you want all of \<img\> elements in the page to be checked. Naively you assume that the keyword WebUI.veirfyAllLinksOnCurrentPageAccessible includes \<img\> elements. But I doubt it. Though I am not sure. The documentation does not tell if the keyword includes \<img\> or not. How about checking the source code? The verifyAllLinksOnCurrentPageAccessible keyword’s source is published at [https://github.com/katalon-studio/katalon-studio-testing-framework/blob/mas…](https://github.com/katalon-studio/katalon-studio-testing-framework/blob/master/Include/scripts/groovy/com/kms/katalon/core/webui/keyword/builtin/VerifyAllLinksOnCurrentPageAccessibleKeyword.groovy)

I could not find enough information in the repository. Possiblly, that github repository is left old, not updated for a long time. It would be great if you disclose the source of recently-added built-in keywords.

---

<div class="post-metadata">

**Author:** ![ThanhTo](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/thanhto/32/697_2.png) [@ThanhTo](https://forum.katalon.com/u/ThanhTo)\
**Post date:** [November 5, 2020, 2:43am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/3 "2020-11-05T02:43:14Z")

</div>



---

<div class="post-metadata">

**Author:** ![ThanhTo](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/thanhto/32/697_2.png) [@ThanhTo](https://forum.katalon.com/u/ThanhTo)\
**Post date:** [November 5, 2020, 4:39am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/4 "2020-11-05T04:39:18Z")

</div>

@kazurayam

You can go to Katalon Studio the latest version and see the source code for yourself. In the script view of any test case, press `ctrl + shift + T` on Windows (or `cmd + shift + T` on Mac), search for `verifyAllLinksOnCurrentPageAccessible`.

 ![image](https://europe1.discourse-cdn.com/katalon/original/2X/d/dc2d7f82100b83a8973e71146d9f6edc116cb8e5.png)

And you can see the source code of the keyword:

 ![image](https://europe1.discourse-cdn.com/katalon/original/2X/1/11ec5cb9ff3f446158b7af42f3694dce19f67704.png)

Does that work for you ?

---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 5, 2020, 4:44am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/5 "2020-11-05T04:44:58Z")

</div>

> [@ThanhTo](#):
>
> Does that work for you ?

Unfortunately not.

As I wrote in [How to find the inaccessible links on a webpage - #20 by kazurayam](http://forum.katalon.com/t/how-to-find-the-inaccessible-links-on-a-webpage/48716/20) , I wanted to find out if the keyword checks `<img>` elements or not. The portion you showed above does not tell it to me.

I needed to read the source of `WebUiBuildtInKeywrds.getAllLinksOnCurrentPage()` in full detail. I found that the implementation of this method is further modularized, I needed to go deep into the bunch of modules. And eventually I could not find **the code which is actually scanning a web page for so-called “links”**. I would be glad if you point me to the URL of that portion of code.

---

<div class="post-metadata">

**Author:** ![ThanhTo](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/thanhto/32/697_2.png) [@ThanhTo](https://forum.katalon.com/u/ThanhTo)\
**Post date:** [November 5, 2020, 7:14am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/6 "2020-11-05T07:14:36Z")

</div>

@kazurayam

Using the above method, the class `GetAllLinksOnCurrentPageKeyword` retrieves all links on the page.

 ![image](https://europe1.discourse-cdn.com/katalon/original/2X/0/0cacd8bb07342aae71331156158d163b8881f612.png)

In the class `VerifyLinksAccessibleKeyword`, you can see the portion of code that sends the request to each link.

 ![image](https://europe1.discourse-cdn.com/katalon/original/2X/e/e6ac4ebdd5e18a2166448a175a7fc640ea76c63c.png)

---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 5, 2020, 8:53am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/7 "2020-11-05T08:53:05Z")

</div>

> [@ThanhTo](#):
>
> Using the above method, the class `GetAllLinksOnCurrentPageKeyword` retrieves all links on the page.

I can not see, out of the code, if `<img>` elements are retrieved. How can you?

---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 5, 2020, 9:03am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/8 "2020-11-05T09:03:52Z")

</div>

Cmd + Shift + T on my Mac responded the following display:

 ![スクリーンショット 2020-11-05 18.00.39](https://europe1.discourse-cdn.com/katalon/original/2X/4/484cfea1be61132f76d761b51acde01ef56b113a.jpeg)

 ![スクリーンショット 2020-11-05 18.02.44](https://europe1.discourse-cdn.com/katalon/original/2X/7/7f658a8810b5e4fa3f1c0b889c6ddc287901c17a.png)

The jar of source code is not attached as default.  
It would be better if it is attached as default.

---

<div class="post-metadata">

**Author:** ![ThanhTo](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/thanhto/32/697_2.png) [@ThanhTo](https://forum.katalon.com/u/ThanhTo)\
**Post date:** [November 5, 2020, 9:05am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/9 "2020-11-05T09:05:35Z")

</div>

@kazurayam

Are you using a free account ? Try to use a KSE account instead.

---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 5, 2020, 9:10am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/10 "2020-11-05T09:10:50Z")

</div>

Is the source available only in KS Enterprize?

---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 5, 2020, 9:16am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/11 "2020-11-05T09:16:16Z")

</div>

It’s OK. I know how to attach source jar files to the project even in the free version KS.

rewrote 9/Nov/2020:

Let me tell you here how I changed Katalon Studio version 7.7.0 free version so that I can view the source code of `com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords` class.

1. In a test case editor pane, type ctrl + shift + T on Windows (cmd + shift + T on Mac), search for verifyAllLinksOnCurrentPageAccessible
2. In the “Open Type” dialog, enter type name `WebUiBuiltInKeywords` and search.
3. You will see Class File Editor opens. It says _“The JAR file …/com.kmks.core.webui\_xxx.jar”_ has no source attachment. You can attache the source by cliking Attach Source below:
4. I cliked the “Attache Source” button, a smaller dialog opens.
5. I chose “External location / Path” for External File, and specified

- `/Applications/Katalon Studio.app/Contents/Eclipse/configuration/resources/source/com.kms.katalon.core.webui/com.kms.katalon.core.webui-sources.jar`

on my Mac. (On Windows the parent dir path would be different)

 ![スクリーンショット 2020-11-09 11.50.46](https://europe1.discourse-cdn.com/katalon/original/2X/0/0f9469c74b96c8748ca02b69312ba1ad52101c57.jpeg)  
6. Click OK to attache the source jar to the project

When I right-click `WebUiBuiltInKeywords` in the test case source and choose `Open Declaration`, the source of the class opened in the editor.

 ![スクリーンショット 2020-11-09 11.52.04](https://europe1.discourse-cdn.com/katalon/original/2X/c/c70390459859be6f7bf379637616c9c9fa1dd774.jpeg)

I checked the `<projectDir>/.classpath` file and found the following fragment:

```auto
	<classpathentry kind="lib" 
        path="/Applications/Katalon Studio.app/Contents/Eclipse/plugins/com.kms.katalon.core.webui_1.0.0.202009141203.jar" 
        sourcepath="/Applications/Katalon Studio.app/Contents/Eclipse/configuration/resources/source/com.kms.katalon.core.webui/com.kms.katalon.core.webui-sources.jar">
            ....
	</classpathentry>

```

Here we can see the `sourcepath=...` attribute is declared which points to the location of `webui-sources.jar`

---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 6, 2020, 1:33am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/12 "2020-11-06T01:33:12Z")

</div>



---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 9, 2020, 3:00am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/13 "2020-11-09T03:00:58Z")

</div>

I have found a curious thing concerning `.classpath` file.

In a Katalon Studio project I have make the source code of `WebUI` keywords visible. I closed the project; and reopened the project. Then the source code of `WebUI` keywords are turned invisible. Why?

I found the `<projectDir>/.classpath` file is silently overwritten by Katalon Studio when it opens a project. Any customizations of classpath made in a previous session are forgotten.

---

<div class="post-metadata">

**Author:** ![kazurayam](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/kazurayam/32/333_2.png) [@kazurayam](https://forum.katalon.com/u/kazurayam)\
**Post date:** [November 9, 2020, 3:09am UTC](https://forum.katalon.com/t/please-update-the-katalon-studio-testing-framework-repository/37804/14 "2020-11-09T03:09:49Z")

</div>

It seems that Katalon Studio does not provide a feature for users to customise the classpath definition and make the changes by user eternal. You can change the classpath temporarily but it will NOT be respected in the next session.

Possibly Katalon Studio Enterprise has the source jars for the `com.kms.katalon` libraries attached when it is built before distribution. In the Free version, the source jars are not attached.

This is not a big issue at all. I will just be aware of this difference. When needed in the KS free version, I can configure the classpath temporarily. All I need to rember is the location of source jar files: `/Applications/Katalon Studio.app/Contents/Eclipse/configuration/resources/source/` on Mac
