[NUI] Update WebView TCs.
authorhuayong.xu <huayong.xu@samsung.com>
Tue, 25 Apr 2023 09:59:27 +0000 (17:59 +0800)
committerdongsug-song <35130733+dongsug-song@users.noreply.github.com>
Wed, 31 May 2023 05:47:13 +0000 (14:47 +0900)
Originally WebView TCs are run synchronously.
This patch is to change them async.

test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/Tizen.NUI.Devel.Tests.csproj
test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/console_info.html [new file with mode: 0755]
test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/index.html [new file with mode: 0755]
test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/picture.png [new file with mode: 0755]
test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/second.html [new file with mode: 0755]
test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/WebView/TSWebPageLoadError.cs
test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/WebView/TSWebView.cs
test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/WebView/TSWebViewPageLoadErrorEventArgs.cs [deleted file]
test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/WebView/TSWebViewPageLoadEventArgs.cs [deleted file]

index 7d8b097..4c44a2a 100755 (executable)
@@ -3,7 +3,7 @@
   <!-- Property Group for .NET Core Project -->
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFramework>tizen11.0</TargetFramework>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
     <TargetFrameworkIdentifier>Tizen</TargetFrameworkIdentifier>
   </PropertyGroup>
 
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/console_info.html b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/console_info.html
new file mode 100755 (executable)
index 0000000..37bc6cb
--- /dev/null
@@ -0,0 +1,10 @@
+<html>
+    <head>
+        <title>Console Message Test</title>
+        <script language="javascript">
+            console.info('info');
+        </script>
+    </head>
+    <body>
+    </body>
+</html>
\ No newline at end of file
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/index.html b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/index.html
new file mode 100755 (executable)
index 0000000..ccd730f
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Title of the document</title>
+  </head>
+  <body>
+    <h1>Heading </h1>
+    <p>This is arrows photo</p>
+    <img src="./picture.png" alt="arrows" width="150" height="150"/>
+  </body>
+</html>
\ No newline at end of file
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/picture.png b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/picture.png
new file mode 100755 (executable)
index 0000000..87abefd
Binary files /dev/null and b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/picture.png differ
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/second.html b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/res/webview/second.html
new file mode 100755 (executable)
index 0000000..fcd5940
--- /dev/null
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Title of the document</title>
+  </head>
+  <body>
+    <h1>Heading </h1>
+    <p>This is second page for testing.</p>
+  </body>
+</html>
\ No newline at end of file
index f8caa80..4cad5f2 100755 (executable)
@@ -14,97 +14,86 @@ namespace Tizen.NUI.Devel.Tests
     public class PublicWebPageLoadErrorTest
     {
         private const string tag = "NUITEST";
-        private string url = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "picture.png";
-        private static string[] runtimeArgs = { "Tizen.NUI.Devel.Tests", "--enable-dali-window", "--enable-spatial-navigation" };
-        private const string USER_AGENT = "Mozilla/5.0 (SMART-TV; Linux; Tizen 6.0) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/4.0 Chrome/76.0.3809.146 TV Safari/537.36";
-
-        internal class MyWebPageLoadError : WebPageLoadError
-        {
-            public MyWebPageLoadError(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn)
-            { }
-
-            public void OnReleaseSwigCPtr(global::System.Runtime.InteropServices.HandleRef swigCPtr)
-            {
-                base.ReleaseSwigCPtr(swigCPtr);
-            }
-        }
+        private const string errorUrl = "file:///file_that_does_not_exist.html";
+        private BaseComponents.WebView _webview = null;
 
         [SetUp]
         public void Init()
         {
+            _webview = new BaseComponents.WebView()
+            {
+                Size = new Size(500, 200)
+            };
             tlog.Info(tag, "Init() is called!");
         }
 
         [TearDown]
         public void Destroy()
         {
+            _webview.Dispose();
             tlog.Info(tag, "Destroy() is called!");
         }
 
         [Test]
         [Category("P1")]
-        [Description("WebPageLoadError constructor.")]
-        [Property("SPEC", "Tizen.NUI.WebPageLoadError.WebPageLoadError C")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "CONSTR")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebPageLoadErrorConstructor()
-        {
-            tlog.Debug(tag, $"WebPageLoadErrorConstructor START");
-
-            using (Tizen.NUI.BaseComponents.WebView webview = new Tizen.NUI.BaseComponents.WebView("Shanghai", "Asia/Shanghai"))
-            {
-                var testingTarget = new WebPageLoadError(webview.SwigCPtr.Handle, false);
-                Assert.IsNotNull(testingTarget, "null handle");
-                Assert.IsInstanceOf<WebPageLoadError>(testingTarget, "Should return WebPageLoadError instance.");
-
-                testingTarget.Dispose();
-            }
-
-            tlog.Debug(tag, $"WebPageLoadErrorConstructor END (OK)");
-        }
-
-        [Test]
-        [Category("P1")]
         [Description("WebPageLoadError Url.")]
         [Property("SPEC", "Tizen.NUI.WebPageLoadError.Url A")]
         [Property("SPEC_URL", "-")]
         [Property("CRITERIA", "PRO")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public async Task WebPageLoadErrorUrl()
+        public async Task WebPageLoadError()
         {
             tlog.Debug(tag, $"WebPageLoadErrorUrl START");
 
-            var testingTarget = new Tizen.NUI.BaseComponents.WebView(runtimeArgs)
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadErrorEventArgs> onLoadError = (s, e) =>
             {
-                Size = new Size(500, 200),
-                UserAgent = USER_AGENT
+                bool failed = true;
+                var url = e.PageLoadError.Url;
+                Log.Info(tag, $"load error, Url: {url}");
+                if (url is string && url.Equals(errorUrl))
+                {
+                    failed = false;
+                }
+
+                var code = e.PageLoadError.Code;
+                Log.Info(tag, $"load error, Code: {code}");
+                if (code.GetType() == typeof(WebPageLoadError.ErrorCode) && (code.Equals(NUI.WebPageLoadError.ErrorCode.CannotLookupHost) || code.Equals(NUI.WebPageLoadError.ErrorCode.Unknown)))
+                {
+                    failed = false;
+                }
+
+                var type = e.PageLoadError.Type;
+                Log.Info(tag, $"load error, Type: {type}");
+                if (type.GetType() == typeof(WebPageLoadError.ErrorType) && type.Equals(NUI.WebPageLoadError.ErrorType.Network))
+                {
+                    failed = false;
+                }
+
+                var description = e.PageLoadError.Description;
+                Log.Info(tag, $"load error, Description: {description}");
+                if (description is string)
+                {
+                    failed = false;
+                }
+
+                if (!failed)
+                {
+                    tcs.TrySetResult(true);
+                }
             };
-            Assert.IsNotNull(testingTarget, "null handle");
-            Assert.IsInstanceOf<Tizen.NUI.BaseComponents.WebView>(testingTarget, "Should return Tizen.NUI.BaseComponents.WebView instance.");
 
-            testingTarget.PageLoadError += OnPageLoadError;
-            NUIApplication.GetDefaultWindow().Add(testingTarget);
+            _webview.PageLoadError += onLoadError;
 
-            testingTarget.LoadUrl("http://111");
+            _webview.LoadUrl(errorUrl);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "Url should be valid value");
 
             await Task.Delay(10000);
-            testingTarget.ClearCache();
-            testingTarget.ClearCookies();
-            NUIApplication.GetDefaultWindow().Remove(testingTarget);
+            _webview.PageLoadError -= onLoadError;
 
-            testingTarget.Dispose();
             tlog.Debug(tag, $"WebPageLoadErrorUrl END (OK)");
         }
-
-        private void OnPageLoadError(object sender, WebViewPageLoadErrorEventArgs e)
-        {
-            Log.Info(tag, $"load error, Url: {e.PageLoadError.Url}");
-            Log.Info(tag, $"load error, Code: {e.PageLoadError.Code}");
-            Log.Info(tag, $"load error, Description: {e.PageLoadError.Description}");
-            Log.Info(tag, $"load error, Type: {e.PageLoadError.Type}");
-        }
     }
 }
index fba2ff2..556dc30 100755 (executable)
@@ -3,6 +3,7 @@ using NUnit.Framework;
 using NUnit.Framework.TUnit;
 using Tizen.NUI.Components;
 using Tizen.NUI.BaseComponents;
+using System.Threading.Tasks;
 
 namespace Tizen.NUI.Devel.Tests
 {
@@ -13,18 +14,23 @@ namespace Tizen.NUI.Devel.Tests
     public class PublicWebViewTest
     {
         private const string tag = "NUITEST";
-        private string url = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "picture.png";
-
-        private static string[] runtimeArgs = { "Tizen.NUI.Devel.Tests", "--enable-dali-window", "--enable-spatial-navigation" };
+        private string url = Applications.Application.Current.DirectoryInfo.Resource + "webview/index.html"; // its size is 150x150.
+        private string secondUrl = Applications.Application.Current.DirectoryInfo.Resource + "webview/second.html";
+        private string urlForNavigationPolicyTest = "http://www.google.com";
+        private string urlForCertificateConfirmTest = "https://wrong.host.badssl.com/";
+        private string urlForResponsePolicyTest = "http://www.samsung.com";
+        private string urlForConsoleMessageTest = Applications.Application.Current.DirectoryInfo.Resource + "webview/console_info.html";
+
+        private static string[] runtimeArgs = { "--enable-dali-window", "--enable-spatial-navigation" };
         private const string USER_AGENT = "Mozilla/5.0 (SMART-TV; Linux; Tizen 6.0) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/4.0 Chrome/76.0.3809.146 TV Safari/537.36";
-        private Tizen.NUI.BaseComponents.WebView webView = null;
+        private BaseComponents.WebView webView = null;
 
         private void JsCallback(string arg) { }
-        private void VideoCallback (bool arg) { }
-        private void GeolocationCallback (string arg1, string arg2) { }
-        private void PromptCallback (string arg1, string arg2) { }
+        private void VideoCallback(bool arg) { }
+        private void GeolocationCallback(string arg1, string arg2) { }
+        private void PromptCallback(string arg1, string arg2) { }
         private void PlainReceivedCallback(string arg2) { }
-        private void ScreenshotAcquiredCallbackCase(ImageView image){}
+        private void ScreenshotAcquiredCallbackCase(ImageView image) { }
 
         internal class MyWebView : Tizen.NUI.BaseComponents.WebView
         {
@@ -40,22 +46,17 @@ namespace Tizen.NUI.Devel.Tests
         [SetUp]
         public void Init()
         {
-            tlog.Info(tag, "Init() is called!");
-
-            webView = new Tizen.NUI.BaseComponents.WebView(runtimeArgs)
+            webView = new BaseComponents.WebView(runtimeArgs)
             {
-                Size = new Size(500, 200),
-                UserAgent = USER_AGENT
+                Size = new Size(150, 100), //For scrolling to edge...
             };
-
-            webView.LoadUrl("http://www.baidu.com");
+            tlog.Info(tag, "Init() is called!");
         }
 
         [TearDown]
         public void Destroy()
         {
-            webView.ClearCache();
-            webView.ClearCookies();
+            tlog.Info(tag, "Destroy() is being called!");
             webView.Dispose();
             tlog.Info(tag, "Destroy() is called!");
         }
@@ -72,11 +73,9 @@ namespace Tizen.NUI.Devel.Tests
         {
             tlog.Debug(tag, $"WebViewConstructor START");
 
-            var testingTarget = new Tizen.NUI.BaseComponents.WebView();
-            Assert.IsNotNull(testingTarget, "null handle");
-            Assert.IsInstanceOf<Tizen.NUI.BaseComponents.WebView>(testingTarget, "Should return WebView instance.");
+            Assert.IsNotNull(webView, "null handle");
+            Assert.IsInstanceOf<Tizen.NUI.BaseComponents.WebView>(webView, "Should return WebView instance.");
 
-            testingTarget?.Dispose();
             tlog.Debug(tag, $"WebViewConstructor END (OK)");
         }
 
@@ -116,8 +115,6 @@ namespace Tizen.NUI.Devel.Tests
             Assert.IsNotNull(testingTarget, "null handle");
             Assert.IsInstanceOf<Tizen.NUI.BaseComponents.WebView>(testingTarget, "Should return WebView instance.");
 
-            testingTarget.ClearCache();
-            testingTarget.ClearCookies();
             testingTarget.Dispose();
             tlog.Debug(tag, $"WebViewConstructorWithWebView END (OK)");
         }
@@ -125,17 +122,24 @@ namespace Tizen.NUI.Devel.Tests
         [Test]
         [Category("P1")]
         [Description("WebView PageLoadStarted.")]
-        [Property("SPEC", "Tizen.NUI.WebView.PageLoadStarted A")]
+        [Property("SPEC", "Tizen.NUI.WebView.PageLoadStarted E")]
         [Property("SPEC_URL", "-")]
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewPageLoadStarted()
+        public async Task WebViewPageLoadStarted()
         {
             tlog.Debug(tag, $"WebViewPageLoadStarted START");
 
-            webView.PageLoadStarted += OnLoadStarted;
-            webView.PageLoadStarted -= OnLoadStarted;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadStarted = (s, e) => { tcs.TrySetResult(true); };
+            webView.PageLoadStarted += onLoadStarted;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadStarted event should be invoked");
+
+            webView.PageLoadStarted -= onLoadStarted;
 
             tlog.Debug(tag, $"WebViewPageLoadStarted END (OK)");
         }
@@ -143,17 +147,24 @@ namespace Tizen.NUI.Devel.Tests
         [Test]
         [Category("P1")]
         [Description("WebView PageLoading.")]
-        [Property("SPEC", "Tizen.NUI.WebView.PageLoading A")]
+        [Property("SPEC", "Tizen.NUI.WebView.PageLoading E")]
         [Property("SPEC_URL", "-")]
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewPageLoading()
+        public async Task WebViewPageLoading()
         {
             tlog.Debug(tag, $"WebViewPageLoading START");
 
-            webView.PageLoading += OnLoading;
-            webView.PageLoading -= OnLoading;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoading = (s, e) => { tcs.TrySetResult(true); };
+            webView.PageLoading += onLoading;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoading event should be invoked");
+
+            webView.PageLoading -= onLoading;
 
             tlog.Debug(tag, $"WebViewPageLoading END (OK)");
         }
@@ -161,92 +172,110 @@ namespace Tizen.NUI.Devel.Tests
         [Test]
         [Category("P1")]
         [Description("WebView PageLoadFinished.")]
-        [Property("SPEC", "Tizen.NUI.WebView.PageLoadFinished A")]
+        [Property("SPEC", "Tizen.NUI.WebView.PageLoadFinished E")]
         [Property("SPEC_URL", "-")]
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewPageLoadFinished()
+        public async Task WebViewPageLoadFinished()
         {
             tlog.Debug(tag, $"WebViewPageLoadFinished START");
 
-            webView.PageLoadFinished += OnLoadFinished;
-            webView.PageLoadFinished -= OnLoadFinished;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) => { tcs.TrySetResult(true); };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewPageLoadFinished END (OK)");
         }
 
-        [Test]
-        [Category("P1")]
-        [Description("WebView PageLoadError.")]
-        [Property("SPEC", "Tizen.NUI.WebView.PageLoadError A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRW")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewPageLoadError()
-        {
-            tlog.Debug(tag, $"WebViewPageLoadError START");
+        //TODO... it seems that web engine does not implement it.
+        //[Test]
+        //[Category("P1")]
+        //[Description("WebView ScrollEdgeReached.")]
+        //[Property("SPEC", "Tizen.NUI.WebView.ScrollEdgeReached E")]
+        //[Property("SPEC_URL", "-")]
+        //[Property("CRITERIA", "PRW")]
+        //[Property("COVPARAM", "")]
+        //[Property("AUTHOR", "guowei.wang@samsung.com")]
+        //public async Task WebViewScrollEdgeReached()
+        //{
+        //    tlog.Debug(tag, $"WebViewScrollEdgeReached START");
 
-            webView.PageLoadError += OnLoadError;
-            webView.PageLoadError -= OnLoadError;
+        //    TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+        //    EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
+        //    {
+        //        webView.ScrollBy(0, 60);
+        //    };
+        //    webView.PageLoadFinished += onLoadFinished;
 
-            tlog.Debug(tag, $"WebViewPageLoadError END (OK)");
-        }
+        //    EventHandler<WebViewScrollEdgeReachedEventArgs> onEdgeReached = (s, e) =>
+        //    {
+        //        tcs.TrySetResult(true);
+        //    };
+        //    webView.ScrollEdgeReached += onEdgeReached;
 
-        [Test]
-        [Category("P1")]
-        [Description("WebView ScrollEdgeReached.")]
-        [Property("SPEC", "Tizen.NUI.WebView.ScrollEdgeReached A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRW")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewScrollEdgeReached()
-        {
-            tlog.Debug(tag, $"WebViewScrollEdgeReached START");
+        //    webView.LoadUrl(url);
+        //    var result = await tcs.Task;
+        //    Assert.IsTrue(result, "ScrollEdgeReached event should be invoked");
 
-            webView.ScrollEdgeReached += OnEdgeReached;
-            webView.ScrollEdgeReached -= OnEdgeReached;
+        //    webView.PageLoadFinished -= onLoadFinished;
+        //    webView.ScrollEdgeReached -= onEdgeReached;
 
-            tlog.Debug(tag, $"WebViewPageLoadError END (OK)");
-        }
+        //    tlog.Debug(tag, $"WebViewScrollEdgeReached END (OK)");
+        //}
 
         [Test]
         [Category("P1")]
         [Description("WebView UrlChanged.")]
-        [Property("SPEC", "Tizen.NUI.WebView.UrlChanged A")]
+        [Property("SPEC", "Tizen.NUI.WebView.UrlChanged E")]
         [Property("SPEC_URL", "-")]
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewUrlChanged()
+        public async Task WebViewUrlChanged()
         {
             tlog.Debug(tag, $"WebViewUrlChanged START");
 
-            webView.UrlChanged += OnUrlChange;
-            webView.UrlChanged -= OnUrlChange;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+
+            EventHandler<WebViewUrlChangedEventArgs> onUrlChange = (s, e) =>
+            {
+                tcs.TrySetResult(true);
+            };
+            webView.UrlChanged += onUrlChange;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "UrlChanged event should be invoked");
+
+            webView.UrlChanged -= onUrlChange;
 
             tlog.Debug(tag, $"WebViewUrlChanged END (OK)");
         }
 
-        [Test]
-        [Category("P1")]
-        [Description("WebView FormRepostPolicyDecided.")]
-        [Property("SPEC", "Tizen.NUI.WebView.FormRepostPolicyDecided A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRW")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewFormRepostPolicyDecided()
-        {
-            tlog.Debug(tag, $"WebViewFormRepostPolicyDecided START");
+        //[Test]
+        //[Category("P1")]
+        //[Description("WebView FormRepostPolicyDecided.")]
+        //[Property("SPEC", "Tizen.NUI.WebView.FormRepostPolicyDecided A")]
+        //[Property("SPEC_URL", "-")]
+        //[Property("CRITERIA", "PRW")]
+        //[Property("COVPARAM", "")]
+        //[Property("AUTHOR", "guowei.wang@samsung.com")]
+        //public void WebViewFormRepostPolicyDecided()
+        //{
+        //    tlog.Debug(tag, $"WebViewFormRepostPolicyDecided START");
 
-            webView.FormRepostPolicyDecided += OnFormRepostPolicyDecide;
-            webView.FormRepostPolicyDecided -= OnFormRepostPolicyDecide;
+        //    webView.FormRepostPolicyDecided += OnFormRepostPolicyDecide;
+        //    webView.FormRepostPolicyDecided -= OnFormRepostPolicyDecide;
 
-            tlog.Debug(tag, $"WebViewFormRepostPolicyDecided END (OK)");
-        }
+        //    tlog.Debug(tag, $"WebViewFormRepostPolicyDecided END (OK)");
+        //}
 
         [Test]
         [Category("P1")]
@@ -256,12 +285,19 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewFrameRendered()
+        public async Task WebViewFrameRendered()
         {
             tlog.Debug(tag, $"WebViewFrameRendered START");
 
-            webView.FrameRendered += OnFrameRender;
-            webView.FrameRendered -= OnFrameRender;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<EventArgs> onFrameRender = (s, e) => { tcs.TrySetResult(true); };
+            webView.FrameRendered += onFrameRender;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "FrameRendered event should be invoked");
+
+            webView.FrameRendered -= onFrameRender;
 
             tlog.Debug(tag, $"WebViewFrameRendered END (OK)");
         }
@@ -274,12 +310,19 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewResponsePolicyDecided()
+        public async Task WebViewResponsePolicyDecided()
         {
             tlog.Debug(tag, $"WebViewResponsePolicyDecided START");
 
-            webView.ResponsePolicyDecided += OnResponsePolicyDecide;
-            webView.ResponsePolicyDecided -= OnResponsePolicyDecide;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPolicyDecidedEventArgs> onResponsePolicyDecide = (s, e) => { tcs.TrySetResult(true); };
+            webView.ResponsePolicyDecided += onResponsePolicyDecide;
+
+            webView.LoadUrl(urlForResponsePolicyTest);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "ResponsePolicyDecided event should be invoked");
+
+            webView.ResponsePolicyDecided -= onResponsePolicyDecide;
 
             tlog.Debug(tag, $"WebViewResponsePolicyDecided END (OK)");
         }
@@ -292,12 +335,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewNavigationPolicyDecided()
+        public async Task WebViewNavigationPolicyDecided()
         {
             tlog.Debug(tag, $"WebViewNavigationPolicyDecided START");
 
-            webView.NavigationPolicyDecided += OnNavigationPolicyDecided;
-            webView.NavigationPolicyDecided -= OnNavigationPolicyDecided;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+
+            EventHandler<WebViewPolicyDecidedEventArgs> onNavigationPolicyDecided = (s, e) =>
+            {
+                tlog.Info(tag, "onNavigationPolicyDecided is being called!");
+                tcs.TrySetResult(true);
+            };
+            webView.NavigationPolicyDecided += onNavigationPolicyDecided;
+
+            webView.LoadUrl(urlForNavigationPolicyTest);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "NavigationPolicyDecided event should be invoked");
+
+            webView.NavigationPolicyDecided -= onNavigationPolicyDecided;
 
             tlog.Debug(tag, $"WebViewNavigationPolicyDecided END (OK)");
         }
@@ -310,12 +365,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewCertificateConfirmed()
+        public async Task WebViewCertificateConfirmed()
         {
             tlog.Debug(tag, $"WebViewCertificateConfirmed START");
 
-            webView.CertificateConfirmed += OnCertificateConfirme;
-            webView.CertificateConfirmed -= OnCertificateConfirme;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+
+            EventHandler<WebViewCertificateReceivedEventArgs> onCertificateConfirme = (s, e) =>
+            {
+                tlog.Info(tag, "CertificateConfirmed is being called!");
+                tcs.TrySetResult(true);
+            };
+            webView.CertificateConfirmed += onCertificateConfirme;
+
+            webView.LoadUrl(urlForCertificateConfirmTest);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "CertificateConfirmed event should be invoked");
+
+            webView.CertificateConfirmed -= onCertificateConfirme;
 
             tlog.Debug(tag, $"WebViewCertificateConfirmed END (OK)");
         }
@@ -328,33 +395,48 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewSslCertificateChanged()
+        public async Task WebViewSslCertificateChanged()
         {
             tlog.Debug(tag, $"WebViewSslCertificateChanged START");
 
-            webView.SslCertificateChanged += OnSslCertificateChange;
-            webView.SslCertificateChanged -= OnSslCertificateChange;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewCertificateReceivedEventArgs> onSslCertificateChange = (s, e) => { tcs.TrySetResult(true); };
+            webView.SslCertificateChanged += onSslCertificateChange;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "SslCertificateChanged event should be invoked");
+
+            webView.SslCertificateChanged -= onSslCertificateChange;
 
             tlog.Debug(tag, $"WebViewSslCertificateChanged END (OK)");
         }
 
-        [Test]
-        [Category("P1")]
-        [Description("WebView HttpAuthRequested.")]
-        [Property("SPEC", "Tizen.NUI.WebView.HttpAuthRequested A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRW")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewHttpAuthRequested()
-        {
-            tlog.Debug(tag, $"WebViewHttpAuthRequested START");
+        //TODO... it seems that web engine does not implement it.
+        //[Test]
+        //[Category("P1")]
+        //[Description("WebView HttpAuthRequested.")]
+        //[Property("SPEC", "Tizen.NUI.WebView.HttpAuthRequested A")]
+        //[Property("SPEC_URL", "-")]
+        //[Property("CRITERIA", "PRW")]
+        //[Property("COVPARAM", "")]
+        //[Property("AUTHOR", "guowei.wang@samsung.com")]
+        //public async Task WebViewHttpAuthRequested()
+        //{
+        //    tlog.Debug(tag, $"WebViewHttpAuthRequested START");
 
-            webView.HttpAuthRequested += OnHttpAuthRequeste;
-            webView.HttpAuthRequested -= OnHttpAuthRequeste;
+        //    TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+        //    EventHandler<WebViewHttpAuthRequestedEventArgs> onHttpAuthRequeste = (s, e) => { tcs.TrySetResult(true); };
+        //    webView.HttpAuthRequested += onHttpAuthRequeste;
 
-            tlog.Debug(tag, $"WebViewHttpAuthRequested END (OK)");
-        }
+        //    webView.LoadUrl(urlForHttpAuthRequestTest);
+        //    var result = await tcs.Task;
+        //    Assert.IsTrue(result, "ResponsePolicyDecided event should be invoked");
+
+        //    webView.HttpAuthRequested -= onHttpAuthRequeste;
+
+        //    tlog.Debug(tag, $"WebViewHttpAuthRequested END (OK)");
+        //}
 
         [Test]
         [Category("P1")]
@@ -364,52 +446,61 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewConsoleMessageReceived()
+        public async Task WebViewConsoleMessageReceived()
         {
             tlog.Debug(tag, $"WebViewHttpAuthRequested START");
 
-            webView.ConsoleMessageReceived += OnConsoleMessageReceive;
-            webView.ConsoleMessageReceived -= OnConsoleMessageReceive;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewConsoleMessageReceivedEventArgs> onConsoleMessageReceive = (s, e) => { tcs.TrySetResult(true); };
+            webView.ConsoleMessageReceived += onConsoleMessageReceive;
+
+            webView.LoadUrl(urlForConsoleMessageTest);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "ConsoleMessageReceived event should be invoked");
+
+            webView.ConsoleMessageReceived -= onConsoleMessageReceive;
 
             tlog.Debug(tag, $"WebViewConsoleMessageReceived END (OK)");
         }
-         
-        [Test]
-        [Category("P1")]
-        [Description("WebView ContextMenuShown.")]
-        [Property("SPEC", "Tizen.NUI.WebView.ContextMenuShown A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRW")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewContextMenuShown()
-        {
-            tlog.Debug(tag, $"WebViewContextMenuShown START");
 
-            webView.ContextMenuShown += OnContextMenuShown;
-            webView.ContextMenuShown -= OnContextMenuShown;
+        //TODO... move it to manual test...
+        //[Test]
+        //[Category("P1")]
+        //[Description("WebView ContextMenuShown.")]
+        //[Property("SPEC", "Tizen.NUI.WebView.ContextMenuShown A")]
+        //[Property("SPEC_URL", "-")]
+        //[Property("CRITERIA", "PRW")]
+        //[Property("COVPARAM", "")]
+        //[Property("AUTHOR", "guowei.wang@samsung.com")]
+        //public void WebViewContextMenuShown()
+        //{
+        //    tlog.Debug(tag, $"WebViewContextMenuShown START");
 
-            tlog.Debug(tag, $"WebViewContextMenuShown END (OK)");
-        }               
+        //    webView.ContextMenuShown += OnContextMenuShown;
+        //    webView.ContextMenuShown -= OnContextMenuShown;
 
-        [Test]
-        [Category("P1")]
-        [Description("WebView ContextMenuHidden.")]
-        [Property("SPEC", "Tizen.NUI.WebView.ContextMenuHidden A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRW")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewContextMenuHidden()
-        {
-            tlog.Debug(tag, $"WebViewContextMenuHidden START");
+        //    tlog.Debug(tag, $"WebViewContextMenuShown END (OK)");
+        //}
+
+        //TODO... move it to manual test...
+        //[Test]
+        //[Category("P1")]
+        //[Description("WebView ContextMenuHidden.")]
+        //[Property("SPEC", "Tizen.NUI.WebView.ContextMenuHidden A")]
+        //[Property("SPEC_URL", "-")]
+        //[Property("CRITERIA", "PRW")]
+        //[Property("COVPARAM", "")]
+        //[Property("AUTHOR", "guowei.wang@samsung.com")]
+        //public void WebViewContextMenuHidden()
+        //{
+        //    tlog.Debug(tag, $"WebViewContextMenuHidden START");
 
-            webView.ContextMenuHidden += OnContextMenuHidden;
-            webView.ContextMenuHidden -= OnContextMenuHidden;
+        //    webView.ContextMenuHidden += OnContextMenuHidden;
+        //    webView.ContextMenuHidden -= OnContextMenuHidden;
+
+        //    tlog.Debug(tag, $"WebViewContextMenuHidden END (OK)");
+        //}
 
-            tlog.Debug(tag, $"WebViewContextMenuHidden END (OK)");
-        }      
-                               
         [Test]
         [Category("P1")]
         [Description("WebView BackForwardList.")]
@@ -490,13 +581,23 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewUrl()
+        public async Task WebViewUrl()
         {
             tlog.Debug(tag, $"WebViewUrl START");
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
+            {
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
 
             webView.Url = url;
-            tlog.Debug(tag, "Url : " + webView.Url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
 
+            webView.PageLoadFinished -= onLoadFinished;
+
+            tlog.Debug(tag, "Url : " + webView.Url);
             tlog.Debug(tag, $"WebViewUrl END (OK)");
         }
 
@@ -556,13 +657,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewUserAgent()
+        public async Task WebViewUserAgent()
         {
             tlog.Debug(tag, $"WebViewUserAgent START");
 
-            webView.UserAgent = "Mozilla/5.0 (Linux; Android 4.2.1; M040 Build/JOP40D) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.59 Mobile Safari/537.36";
-            tlog.Debug(tag, "UserAgent : " + webView.UserAgent);
+            webView.UserAgent = USER_AGENT;
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
+            {
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
 
+            webView.PageLoadFinished -= onLoadFinished;
+
+            tlog.Debug(tag, "UserAgent : " + webView.UserAgent);
             tlog.Debug(tag, $"WebViewUserAgent END (OK)");
         }
 
@@ -757,11 +869,23 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "PRW")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewContentBackgroundColor()
+        public async Task WebViewContentBackgroundColor()
         {
             tlog.Debug(tag, $"WebViewContentBackgroundColor START");
 
-            webView.ContentBackgroundColor = new Vector4(0.3f, 0.5f, 1.0f, 0.0f);
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
+            {
+                webView.ContentBackgroundColor = new Vector4(0.3f, 0.5f, 1.0f, 0.0f);
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
+
             tlog.Debug(tag, "ContentBackgroundColor : " + webView.ContentBackgroundColor);
 
             tlog.Debug(tag, $"WebViewContentBackgroundColor END (OK)");
@@ -943,19 +1067,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewLoadHtmlString()
+        public async Task WebViewLoadHtmlString()
         {
             tlog.Debug(tag, $"WebViewLoadHtmlString START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                webView.LoadHtmlString("<html><head lang=\"en\"></head></html>");
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadHtmlString("<html><head lang=\"en\"></head></html>");
+
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewLoadHtmlString END (OK)");
         }
@@ -968,19 +1097,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewLoadHTMLString()
+        public async Task WebViewLoadHTMLString()
         {
             tlog.Debug(tag, $"WebViewLoadHTMLString START");
 
-            try
-            {
-                webView.LoadHTMLString("<html><head lang=\"en\"></head></html>");
-            }
-            catch (Exception e)
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadHTMLString("<html><head lang=\"en\"></head></html>");
+
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewLoadHTMLString END (OK)");
         }
@@ -993,19 +1127,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewLoadContents()
+        public async Task WebViewLoadContents()
         {
             tlog.Debug(tag, $"WebViewLoadContents START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                webView.LoadContents("body", 18, " ", "gbk", "http://www.runoob.com/jsref/prop-doc-baseuri.html");
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadContents("body", 18, " ", "gbk", null);
+
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewLoadContents END (OK)");
         }
@@ -1018,19 +1157,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewReload()
+        public async Task WebViewReload()
         {
             tlog.Debug(tag, $"WebViewReload START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.Reload();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewReload END (OK)");
         }
@@ -1043,19 +1188,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewReloadWithoutCache()
+        public async Task WebViewReloadWithoutCache()
         {
             tlog.Debug(tag, $"WebViewReloadWithoutCache START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.ReloadWithoutCache();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewReloadWithoutCache END (OK)");
         }
@@ -1068,19 +1219,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewStopLoading()
+        public async Task WebViewStopLoading()
         {
             tlog.Debug(tag, $"WebViewStopLoading START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadStarted = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.StopLoading();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadStarted += onLoadStarted;
+
+            webView.LoadUrl(url);
+
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadStarted event should be invoked");
+
+            webView.PageLoadStarted -= onLoadStarted;
 
             tlog.Debug(tag, $"WebViewStopLoading END (OK)");
         }
@@ -1093,20 +1250,33 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewSuspend()
+        public async Task WebViewSuspend()
         {
             tlog.Debug(tag, $"WebViewSuspend START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadStarted = (s, e) =>
             {
+                tlog.Info(tag, "onLoadStarted is called!");
                 webView.Suspend();
-                webView.Resume();
-            }
-            catch (Exception e)
+            };
+            webView.PageLoadStarted += onLoadStarted;
+
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                webView.Resume();
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadStarted -= onLoadStarted;
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewSuspend END (OK)");
         }
@@ -1119,20 +1289,33 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewSuspendNetworkLoading()
+        public async Task WebViewSuspendNetworkLoading()
         {
             tlog.Debug(tag, $"WebViewSuspendNetworkLoading START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadStarted = (s, e) =>
             {
+                tlog.Info(tag, "onLoadStarted is called!");
                 webView.SuspendNetworkLoading();
-                webView.ResumeNetworkLoading();
-            }
-            catch (Exception e)
+            };
+            webView.PageLoadStarted += onLoadStarted;
+
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                webView.ResumeNetworkLoading();
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadStarted -= onLoadStarted;
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewSuspendNetworkLoading END (OK)");
         }
@@ -1166,19 +1349,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewScrollBy()
+        public async Task WebViewScrollBy()
         {
             tlog.Debug(tag, $"WebViewScrollBy START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                webView.ScrollBy(1, 1);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                webView.ScrollBy(0, 60);
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "ScrollEdgeReached event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewScrollBy END (OK)");
         }
@@ -1191,12 +1379,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewScrollEdgeBy()
+        public async Task WebViewScrollEdgeBy()
         {
             tlog.Debug(tag, $"WebViewScrollEdgeBy START");
 
-            var result = webView.ScrollEdgeBy(1, 1);
-            tlog.Debug(tag, "ScrollEdgeBy : " + result);
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
+            {
+                tlog.Info(tag, "onLoadFinished is called!");
+                webView.ScrollEdgeBy(0, 60);
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewScrollEdgeBy END (OK)");
         }
@@ -1209,19 +1409,32 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewGoBack()
+        public async Task WebViewGoBack()
         {
             tlog.Debug(tag, $"WebViewGoBack START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                webView.GoBack();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                if (webView.Url.Contains("index.html"))
+                {
+                    tlog.Info(tag, "onLoadFinished is called!");
+                    webView.LoadUrl(secondUrl);
+                }
+                else
+                {
+                    tlog.Info(tag, "onLoadFinished is called!");
+                    webView.GoBack();
+                    tcs.TrySetResult(true);
+                }
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewGoBack END (OK)");
         }
@@ -1234,19 +1447,33 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewGoForward()
+        public async Task WebViewGoForward()
         {
             tlog.Debug(tag, $"WebViewGoForward START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                webView.GoForward();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                if (webView.Url.Contains("index.html"))
+                {
+                    tlog.Info(tag, "onLoadFinished is called!");
+                    webView.LoadUrl(secondUrl);
+                }
+                else
+                {
+                    tlog.Info(tag, "onLoadFinished is called!");
+                    webView.GoBack();
+                    webView.GoForward();
+                    tcs.TrySetResult(true);
+                }
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewGoForward END (OK)");
         }
@@ -1259,12 +1486,32 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewCanGoBack()
+        public async Task WebViewCanGoBack()
         {
             tlog.Debug(tag, $"WebViewCanGoBack START");
 
-            var result = webView.CanGoBack();
-            tlog.Debug(tag, "CanGoBack : " + result);
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
+            {
+                if (webView.Url.Contains("index.html"))
+                {
+                    tlog.Info(tag, "onLoadFinished is called!");
+                    webView.LoadUrl(secondUrl);
+                }
+                else
+                {
+                    tlog.Info(tag, "onLoadFinished is called!");
+                    var canGo = webView.CanGoBack();
+                    tcs.TrySetResult(canGo);
+                }
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewCanGoBack END (OK)");
         }
@@ -1277,12 +1524,33 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewCanGoForward()
+        public async Task WebViewCanGoForward()
         {
             tlog.Debug(tag, $"WebViewCanGoForward START");
 
-            var result = webView.CanGoForward();
-            tlog.Debug(tag, "CanGoForward : " + result);
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
+            {
+                if (webView.Url.Contains("index.html"))
+                {
+                    tlog.Info(tag, "onLoadFinished is called!");
+                    webView.LoadUrl(secondUrl);
+                }
+                else
+                {
+                    tlog.Info(tag, "onLoadFinished is called!");
+                    webView.GoBack();
+                    var canGo = webView.CanGoForward();
+                    tcs.TrySetResult(true);
+                }
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewCanGoForward END (OK)");
         }
@@ -1295,19 +1563,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewEvaluateJavaScript()
+        public async Task WebViewEvaluateJavaScript()
         {
             tlog.Debug(tag, $"WebViewEvaluateJavaScript START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.EvaluateJavaScript("<script type=\"text / javascript\">document.write(\"page\");</script>");
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewEvaluateJavaScript END (OK)");
         }
@@ -1320,19 +1593,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewAddJavaScriptMessageHandler()
+        public async Task WebViewAddJavaScriptMessageHandler()
         {
             tlog.Debug(tag, $"WebViewAddJavaScriptMessageHandler START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.AddJavaScriptMessageHandler("AllowOrigin", JsCallback);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewAddJavaScriptMessageHandler END (OK)");
         }
@@ -1345,19 +1623,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewRegisterJavaScriptAlertCallback()
+        public async Task WebViewRegisterJavaScriptAlertCallback()
         {
             tlog.Debug(tag, $"WebViewRegisterJavaScriptAlertCallback START");
 
-            try
-            {
-                webView.RegisterJavaScriptAlertCallback(JsCallback);
-            }
-            catch (Exception e)
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.RegisterJavaScriptAlertCallback(JsCallback);
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewRegisterJavaScriptAlertCallback END (OK)");
         }
@@ -1370,19 +1654,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewRegisterJavaScriptConfirmCallback()
+        public async Task WebViewRegisterJavaScriptConfirmCallback()
         {
             tlog.Debug(tag, $"WebViewRegisterJavaScriptConfirmCallback START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                webView.RegisterJavaScriptConfirmCallback(JsCallback);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.RegisterJavaScriptConfirmCallback(JsCallback);
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewRegisterJavaScriptConfirmCallback END (OK)");
         }
@@ -1395,19 +1685,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewRegisterJavaScriptPromptCallback()
+        public async Task WebViewRegisterJavaScriptPromptCallback()
         {
             tlog.Debug(tag, $"WebViewRegisterJavaScriptPromptCallback START");
 
-            try
-            {
-                webView.RegisterJavaScriptPromptCallback(PromptCallback);
-            }
-            catch (Exception e)
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.RegisterJavaScriptPromptCallback(PromptCallback);
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewRegisterJavaScriptPromptCallback END (OK)");
         }
@@ -1420,19 +1716,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewClearAllTilesResources()
+        public async Task WebViewClearAllTilesResources()
         {
             tlog.Debug(tag, $"WebViewClearAllTilesResources START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.ClearAllTilesResources();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewClearAllTilesResources END (OK)");
         }
@@ -1445,19 +1746,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewClearHistory()
+        public async Task WebViewClearHistory()
         {
             tlog.Debug(tag, $"WebViewClearHistory START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.ClearHistory();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewClearHistory END (OK)");
         }
@@ -1470,25 +1776,30 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewSetScaleFactor()
+        public async Task WebViewSetScaleFactor()
         {
             tlog.Debug(tag, $"WebViewSetScaleFactor START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 using (Vector2 point = new Vector2(1.0f, 1.0f))
                 {
                     webView.SetScaleFactor(0.2f, point);
 
-                    var result = webView.GetScaleFactor();
-                    tlog.Debug(tag, "ScaleFactor : " + result);
+                    var factor = webView.GetScaleFactor();
+                    tlog.Debug(tag, "ScaleFactor : " + factor);
                 }
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewSetScaleFactor END (OK)");
         }
@@ -1501,19 +1812,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewActivateAccessibility()
+        public async Task WebViewActivateAccessibility()
         {
             tlog.Debug(tag, $"WebViewActivateAccessibility START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.ActivateAccessibility(false);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewActivateAccessibility END (OK)");
         }
@@ -1526,19 +1842,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewHighlightText()
+        public async Task WebViewHighlightText()
         {
             tlog.Debug(tag, $"WebViewHighlightText START");
 
-            try
-            {
-                webView.HighlightText("web", Tizen.NUI.BaseComponents.WebView.FindOption.AtWordStart, 3);
-            }
-            catch (Exception e)
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                webView.HighlightText("web", BaseComponents.WebView.FindOption.AtWordStart, 3);
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewHighlightText END (OK)");
         }
@@ -1551,19 +1872,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewAddDynamicCertificatePath()
+        public async Task WebViewAddDynamicCertificatePath()
         {
             tlog.Debug(tag, $"WebViewAddDynamicCertificatePath START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.AddDynamicCertificatePath("127.0.0.0", "/");
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewAddDynamicCertificatePath END (OK)");
         }
@@ -1576,19 +1902,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewCheckVideoPlayingAsynchronously()
+        public async Task WebViewCheckVideoPlayingAsynchronously()
         {
             tlog.Debug(tag, $"WebViewCheckVideoPlayingAsynchronously START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.CheckVideoPlayingAsynchronously(VideoCallback);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewCheckVideoPlayingAsynchronously END (OK)");
         }
@@ -1601,19 +1932,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewRegisterGeolocationPermissionCallback()
+        public async Task WebViewRegisterGeolocationPermissionCallback()
         {
             tlog.Debug(tag, $"WebViewRegisterGeolocationPermissionCallback START");
 
-            try
-            {
-                webView.RegisterGeolocationPermissionCallback(GeolocationCallback);
-            }
-            catch (Exception e)
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.RegisterGeolocationPermissionCallback(GeolocationCallback);
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewRegisterGeolocationPermissionCallback END (OK)");
         }
@@ -1626,19 +1963,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewGetPlainTextAsynchronously()
+        public async Task WebViewGetPlainTextAsynchronously()
         {
             tlog.Debug(tag, $"WebViewGetPlainTextAsynchronously START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.GetPlainTextAsynchronously(PlainReceivedCallback);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewGetPlainTextAsynchronously END (OK)");
         }
@@ -1651,19 +1993,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewSetTtsFocus()
+        public async Task WebViewSetTtsFocus()
         {
             tlog.Debug(tag, $"WebViewSetTtsFocus START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.SetTtsFocus(false);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewSetTtsFocus END (OK)");
         }
@@ -1676,20 +2023,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewGetScreenshot()
+        public async Task WebViewGetScreenshot()
         {
             tlog.Debug(tag, $"WebViewGetScreenshot START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                var result = webView.GetScaleFactor();
-                webView.GetScreenshot(new Rectangle(5, 6, 100, 200),result);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                var factor = webView.GetScaleFactor();
+                webView.GetScreenshot(new Rectangle(5, 6, 100, 200), factor);
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewGetScreenshot END (OK)");
         }
@@ -1702,20 +2054,25 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewGetScreenshotAsynchronously()
+        public async Task WebViewGetScreenshotAsynchronously()
         {
             tlog.Debug(tag, $"WebViewGetScreenshotAsynchronously START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                var result = webView.GetScaleFactor();
-                webView.GetScreenshotAsynchronously(new Rectangle(5, 6, 100, 200),result,ScreenshotAcquiredCallbackCase);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                var factor = webView.GetScaleFactor();
+                webView.GetScreenshotAsynchronously(new Rectangle(5, 6, 50, 50), factor, ScreenshotAcquiredCallbackCase);
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewGetScreenshotAsynchronously END (OK)");
         }
@@ -1728,19 +2085,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewEvaluateJavaScriptWithCallback()
+        public async Task WebViewEvaluateJavaScriptWithCallback()
         {
             tlog.Debug(tag, $"WebViewEvaluateJavaScriptWithCallback START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
-                webView.EvaluateJavaScript("<script type=\"text / javascript\">document.write(\"page\");</script>",JsCallback);
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tlog.Info(tag, "onLoadFinished is called!");
+                webView.EvaluateJavaScript("<script type=\"text / javascript\">document.write(\"page\");</script>", JsCallback);
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewEvaluateJavaScriptWithCallback END (OK)");
         }
@@ -1753,19 +2115,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewClearCache()
+        public async Task WebViewClearCache()
         {
             tlog.Debug(tag, $"WebViewClearCache START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.ClearCache();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewClearCache END (OK)");
         }
@@ -1778,19 +2145,24 @@ namespace Tizen.NUI.Devel.Tests
         [Property("CRITERIA", "MR")]
         [Property("COVPARAM", "")]
         [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewClearCookies()
+        public async Task WebViewClearCookies()
         {
             tlog.Debug(tag, $"WebViewClearCookies START");
 
-            try
+            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>(false);
+            EventHandler<WebViewPageLoadEventArgs> onLoadFinished = (s, e) =>
             {
+                tlog.Info(tag, "onLoadFinished is called!");
                 webView.ClearCookies();
-            }
-            catch (Exception e)
-            {
-                tlog.Debug(tag, e.Message.ToString());
-                Assert.Fail("Caught Exception : Failed!");
-            }
+                tcs.TrySetResult(true);
+            };
+            webView.PageLoadFinished += onLoadFinished;
+
+            webView.LoadUrl(url);
+            var result = await tcs.Task;
+            Assert.IsTrue(result, "PageLoadFinished event should be invoked");
+
+            webView.PageLoadFinished -= onLoadFinished;
 
             tlog.Debug(tag, $"WebViewClearCookies END (OK)");
         }
@@ -1809,7 +2181,7 @@ namespace Tizen.NUI.Devel.Tests
 
             try
             {
-                Tizen.NUI.BaseComponents.WebView.DownCast(webView);
+                BaseComponents.WebView.DownCast(webView);
             }
             catch (Exception e)
             {
@@ -1867,22 +2239,5 @@ namespace Tizen.NUI.Devel.Tests
 
             tlog.Debug(tag, $"WebViewDispose END (OK)");
         }
-
-        private void OnLoadStarted(object sender, WebViewPageLoadEventArgs e) { }
-        private void OnLoading(object sender, WebViewPageLoadEventArgs e) { }
-        private void OnLoadFinished(object sender, WebViewPageLoadEventArgs e) { }
-        private void OnLoadError(object sender, WebViewPageLoadErrorEventArgs e) { }
-        private void OnEdgeReached(object sender, WebViewScrollEdgeReachedEventArgs e) { }
-        private void OnUrlChange(object sender, WebViewUrlChangedEventArgs e) { }
-        private void OnFormRepostPolicyDecide(object sender, WebViewFormRepostPolicyDecidedEventArgs e) { }
-        private void OnFrameRender(object sender, EventArgs e) { }
-        private void OnResponsePolicyDecide(object sender, WebViewPolicyDecidedEventArgs e) { }
-        private void OnCertificateConfirme(object sender, WebViewCertificateReceivedEventArgs e) { }
-        private void OnSslCertificateChange(object sender, WebViewCertificateReceivedEventArgs e) {  }
-        private void OnHttpAuthRequeste(object sender, WebViewHttpAuthRequestedEventArgs e) { }
-        private void OnConsoleMessageReceive(object sender, WebViewConsoleMessageReceivedEventArgs e) { }
-               private void OnNavigationPolicyDecided(object sender, WebViewPolicyDecidedEventArgs e) { }
-               private void OnContextMenuShown(object sender, WebViewContextMenuShownEventArgs e) { }
-               private void OnContextMenuHidden(object sender, WebViewContextMenuHiddenEventArgs e) { }
     }
 }
\ No newline at end of file
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/WebView/TSWebViewPageLoadErrorEventArgs.cs b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/WebView/TSWebViewPageLoadErrorEventArgs.cs
deleted file mode 100755 (executable)
index d7ccaf5..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-using global::System;
-using NUnit.Framework;
-using NUnit.Framework.TUnit;
-using Tizen.NUI.Components;
-using Tizen.NUI.BaseComponents;
-
-namespace Tizen.NUI.Devel.Tests
-{
-    using tlog = Tizen.Log;
-
-    [TestFixture]
-    [Description("public/WebView/WebViewPageLoadErrorEventArgs")]
-    public class PublicWebViewPageLoadErrorEventArgsTest
-    {
-        private const string tag = "NUITEST";
-        private string url = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "picture.png";
-
-        [SetUp]
-        public void Init()
-        {
-            tlog.Info(tag, "Init() is called!");
-        }
-
-        [TearDown]
-        public void Destroy()
-        {
-            tlog.Info(tag, "Destroy() is called!");
-        }
-
-        [Test]
-        [Category("P1")]
-        [Description("WebViewPageLoadErrorEventArgs constructor.")]
-        [Property("SPEC", "Tizen.NUI.WebViewPageLoadErrorEventArgs.WebViewPageLoadErrorEventArgs C")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "CONSTR")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewPageLoadErrorEventArgsConstructor()
-        {
-            tlog.Debug(tag, $"WebViewPageLoadErrorEventArgsConstructor START");
-
-            using (Tizen.NUI.BaseComponents.WebView webview = new Tizen.NUI.BaseComponents.WebView("Shanghai", "Asia/Shanghai"))
-            {
-                WebPageLoadError le = new WebPageLoadError(webview.SwigCPtr.Handle, false);
-
-                var testingTarget = new WebViewPageLoadErrorEventArgs(le);
-                Assert.IsNotNull(testingTarget, "null handle");
-                Assert.IsInstanceOf<WebViewPageLoadErrorEventArgs>(testingTarget, "Should return WebViewPageLoadErrorEventArgs instance.");
-
-                le.Dispose();
-            }
-
-            tlog.Debug(tag, $"WebViewPageLoadErrorEventArgsConstructor END (OK)");
-        }
-
-        [Test]
-        [Category("P1")]
-        [Description("WebViewPageLoadErrorEventArgs PageLoadError.")]
-        [Property("SPEC", "Tizen.NUI.WebViewPageLoadErrorEventArgs.PageLoadError A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRO")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewPageLoadErrorEventArgsPageLoadError()
-        {
-            tlog.Debug(tag, $"WebViewPageLoadErrorEventArgsPageLoadError START");
-
-            using (Tizen.NUI.BaseComponents.WebView webview = new Tizen.NUI.BaseComponents.WebView("Shanghai", "Asia/Shanghai"))
-            {
-                WebPageLoadError le = new WebPageLoadError(webview.SwigCPtr.Handle, false);
-
-                var testingTarget = new WebViewPageLoadErrorEventArgs(le);
-                Assert.IsNotNull(testingTarget, "null handle");
-                Assert.IsInstanceOf<WebViewPageLoadErrorEventArgs>(testingTarget, "Should return WebViewPageLoadErrorEventArgs instance.");
-
-                var result = testingTarget.PageLoadError;
-                tlog.Debug(tag, "PageLoadError : " +  result);
-
-                le.Dispose();
-            }
-
-            tlog.Debug(tag, $"WebViewPageLoadErrorEventArgsPageLoadError END (OK)");
-        }
-    }
-}
diff --git a/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/WebView/TSWebViewPageLoadEventArgs.cs b/test/Tizen.NUI.Tests/Tizen.NUI.Devel.Tests/testcase/public/WebView/TSWebViewPageLoadEventArgs.cs
deleted file mode 100755 (executable)
index 8146a8c..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-using global::System;
-using NUnit.Framework;
-using NUnit.Framework.TUnit;
-using Tizen.NUI.Components;
-using Tizen.NUI.BaseComponents;
-
-
-namespace Tizen.NUI.Devel.Tests
-{
-    using tlog = Tizen.Log;
-
-    [TestFixture]
-    [Description("public/WebView/WebViewPageLoadEventArgs")]
-    public class PublicWebViewPageLoadEventArgsTest
-    {
-        private const string tag = "NUITEST";
-        private string url = Tizen.Applications.Application.Current.DirectoryInfo.Resource + "picture.png";
-
-        [SetUp]
-        public void Init()
-        {
-            tlog.Info(tag, "Init() is called!");
-        }
-
-        [TearDown]
-        public void Destroy()
-        {
-            tlog.Info(tag, "Destroy() is called!");
-        }
-
-        [Test]
-        [Category("P1")]
-        [Description("WebViewPageLoadEventArgs WebView.")]
-        [Property("SPEC", "Tizen.NUI.WebViewPageLoadEventArgs.WebView A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRW")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewPageLoadEventArgsWebView()
-        {
-            tlog.Debug(tag, $"WebViewPageLoadEventArgsWebView START");
-
-            var testingTarget = new WebViewPageLoadEventArgs();
-            Assert.IsNotNull(testingTarget, "null handle");
-            Assert.IsInstanceOf<WebViewPageLoadEventArgs>(testingTarget, "Should return WebViewPageLoadEventArgs instance.");
-
-            using (Tizen.NUI.BaseComponents.WebView webview = new Tizen.NUI.BaseComponents.WebView("Shanghai", "Asia/Shanghai"))
-            {
-                testingTarget.WebView = webview;
-                tlog.Debug(tag, "WebView : " + testingTarget.WebView);
-            }
-
-            tlog.Debug(tag, $"WebViewPageLoadEventArgsWebView END (OK)");
-        }
-
-        [Test]
-        [Category("P1")]
-        [Description("WebViewPageLoadEventArgs PageUrl.")]
-        [Property("SPEC", "Tizen.NUI.WebViewPageLoadEventArgs.PageUrl A")]
-        [Property("SPEC_URL", "-")]
-        [Property("CRITERIA", "PRW")]
-        [Property("COVPARAM", "")]
-        [Property("AUTHOR", "guowei.wang@samsung.com")]
-        public void WebViewPageLoadEventArgsPageUrl()
-        {
-            tlog.Debug(tag, $"WebViewPageLoadEventArgsPageUrl START");
-
-            var testingTarget = new WebViewPageLoadEventArgs();
-            Assert.IsNotNull(testingTarget, "null handle");
-            Assert.IsInstanceOf<WebViewPageLoadEventArgs>(testingTarget, "Should return WebViewPageLoadEventArgs instance.");
-
-            using (Tizen.NUI.BaseComponents.WebView webview = new Tizen.NUI.BaseComponents.WebView("Shanghai", "Asia/Shanghai"))
-            {
-                testingTarget.PageUrl = "http://www.baidu.com";
-                tlog.Debug(tag, "PageUrl : " + testingTarget.PageUrl);
-            }
-
-            tlog.Debug(tag, $"WebViewPageLoadEventArgsPageUrl END (OK)");
-        }
-    }
-}